Thank you John for your prompt reply.
To explain the issue we are facing further, the device randomly reports incorrect state such as that it is incapable of any analog-in gain ranges. A power cycle doesn't seem to reset the error either. Here is an example code that shows what is the expected (normal operation) output and output when board is in a bad state.
if __name__ == "__main__":
serial_number = "Board USB-1616HS-4 SERIAL NUMBER"
for i, descriptor in enumerate(ul.get_daq_device_inventory(InterfaceType.USB)):
if serial_number == descriptor.unique_id:
# Check that the board has been created
board_num = i
# Update the descriptor
board_descriptor = descriptor
board_info = DaqDeviceInfo(board_num)
ai_info = board_info.get_ai_info()
ao_info = board_info.get_ao_info()
print(f"{board_info.supports_analog_input=}")
print(f"{ai_info.supported_ranges=}")
print(f"{ai_info.supported_scan_options=}")
#Normal operation output:
#board_info.supports_analog_input=True
#ai_info.supported_ranges=[<ULRange.BIP10VOLTS: 1>, <ULRange.BIP5VOLTS: 0>, <ULRange.BIP2VOLTS: 14>, <ULRange.BIP1VOLTS: 4>, <ULRange.BIPPT5VOLTS: 6>, <ULRange.BIPPT2VOLTS: 13>, <ULRange.BIPPT1VOLTS: 7>]
#ai_info.supported_scan_options=<ScanOptions.RES_BLOCK_IO|HIGHRESRATE|EXTTRIGGER|DMAIO|CONVERTDATA|EXTCLOCK|CONTINUOUS|BACKGROUND: 1075855439>
#Bad state output:
#board_info.supports_analog_input=True
#ai_info.supported_ranges=[]
#ai_info.supported_scan_options=<ScanOptions.RES_BLOCK_IO|HIGHRESRATE|EXTTRIGGER|DMAIO|CONVERTDATA|EXTCLOCK|CONTINUOUS|BACKGROUND: 1075855439>