import os import sys # 🔹 Desativar logs do DepthAI os.environ["DEPTHAI_LEVEL"] = "ERROR" import depthai as dai import json # Obtém todos os dispositivos conectados devices = dai.Device.getAllAvailableDevices() device_list = [] for idx, device_info in enumerate(devices): with dai.Device(device_info) as device: try: memory_usage = device.getDdrMemoryUsage() memory_info = { "remaining": memory_usage.remaining, "total": memory_usage.total, "used": memory_usage.used } except: memory_info = None # Se houver erro, define como None try: temp = device.getChipTemperature() temp_info = { "css": temp.css, "mss": temp.mss, "upa": temp.upa, "dss": temp.dss } except: temp_info = None # Se houver erro, define como None device_data = { "index": idx, "id": device_info.getMxId(), # ID do dispositivo "name": device_info.name, # Nome do dispositivo "state": device_info.state.name, # Estado do dispositivo "usb_speed": str(device.getUsbSpeed().name) if hasattr(device, 'getUsbSpeed') else None, # Velocidade USB "available_camera_sensors": [sensor.name for sensor in device.getConnectedCameras()], # Sensores de câmera disponíveis "version": str(device.getDeviceInfo().protocol) if hasattr(device, 'getDeviceInfo') else None, # Versão do protocolo "memory_usage": memory_info, # Uso de memória DDR "temperature": temp_info, # Temperatura do chip "bootloader_version": str(device.getBootloaderVersion()) if hasattr(device, 'getBootloaderVersion') else None, # Bootloader "is_pipeline_running": device.isPipelineRunning() if hasattr(device, 'isPipelineRunning') else None # Pipeline rodando? } device_list.append(device_data) # 🔹 Imprime apenas o JSON, sem logs extras json_output = json.dumps(device_list, indent=4) sys.stdout.write(json_output) sys.stdout.flush()