import serial import struct from google.protobuf.message import DecodeError from serial.tools import list_ports from light_pb2 import RequestThemeSetting, Theme, ThemeSettings from usb_pb2 import PackageType from vcp_driver import * if __name__ == "__main__": ser = setup_connection() request = RequestThemeSetting() request.deviceId = 0 request.theme = 1 print("send request") print(request) request_data = request.SerializeToString() send_package(PackageType.LIGHT_REQUEST_THEME, request_data, ser) print("wait for response") # Read the header from the serial port response_header = ser.read(5) # assuming the header is 5 bytes long # Unpack the header to get the length and type length, typeid, check = struct.unpack('