added passthouth off headlight settings messages

This commit is contained in:
2024-05-29 03:28:16 +02:00
parent 8d02489b16
commit 13002071d7
9 changed files with 125 additions and 17 deletions

View File

@@ -6,6 +6,7 @@ ${PROTO_SRC_DIR}/firmware.proto
${PROTO_SRC_DIR}/light.proto
${PROTO_SRC_DIR}/usb.proto
${PROTO_SRC_DIR}/cls_device.proto
${PROTO_SRC_DIR}/headlight.proto
)
# Specify where you want to generate the python code

View File

@@ -4,25 +4,26 @@ from google.protobuf.message import DecodeError
from serial.tools import list_ports
from light_pb2 import GlobalBrightness, Theme, GlobalTheme, ThemeSettings
from headlight_pb2 import Settings, RequestSettings
from usb_pb2 import PackageType
from vcp_driver import *
if __name__ == "__main__":
ser = setup_connection()
# Create a message
request = GlobalBrightness()
request.brightness = 100
#request = GlobalBrightness()
#request.brightness = 100
# Serialize the request to a bytearray
request_data = request.SerializeToString()
#request_data = request.SerializeToString()
# Send the request
send_package(PackageType.LIGHT_GLOBAL_BRIGHT, request_data, ser)
#send_package(PackageType.LIGHT_GLOBAL_BRIGHT, request_data, ser)
request = GlobalTheme()
request.theme = 1
request_data = request.SerializeToString()
send_package(PackageType.LIGHT_GLOBAL_THEME, request_data, ser)
#request = GlobalTheme()
#request.theme = 1
#request_data = request.SerializeToString()
#send_package(PackageType.LIGHT_GLOBAL_THEME, request_data, ser)
# request = ThemeSettings()
@@ -33,3 +34,14 @@ if __name__ == "__main__":
# request.animation = 2
# request_data = request.SerializeToString()
# send_package(PackageType.LIGHT_SETTING_THEME, request_data, ser)
request = Settings()
request.deviceId = 1
request.alpha = 0.001
request.on_threshold = 600
request.off_threshold = 400
request.on_time = 100
request.input_invert = False
request_data = request.SerializeToString()
send_package(PackageType.HEADLIGHT_SETTINGS, request_data, ser)

View File

@@ -3,21 +3,20 @@ import struct
from google.protobuf.message import DecodeError
from serial.tools import list_ports
from light_pb2 import RequestThemeSetting, Theme, ThemeSettings
from headlight_pb2 import Settings, RequestSettings
from usb_pb2 import PackageType
from vcp_driver import *
if __name__ == "__main__":
ser = setup_connection()
request = RequestThemeSetting()
request.deviceId = 0
request.theme = 1
request = RequestSettings()
request.deviceId = 1
print("send request")
print(request)
request_data = request.SerializeToString()
send_package(PackageType.LIGHT_REQUEST_THEME, request_data, ser)
send_package(PackageType.HEADLIGHT_REQUEST_SETTINGS, request_data, ser)
print("wait for response")
@@ -30,13 +29,13 @@ if __name__ == "__main__":
print(length, typeid, check)
# Check if the type is RESPONSE_DEVICE_LIST
if typeid == PackageType.LIGHT_SETTING_THEME:
if typeid == PackageType.HEADLIGHT_SETTINGS:
# Read the response data from the serial port
response_data = ser.read(length)
# Try to parse the data as a ResponseDeviceList message
try:
response = ThemeSettings.FromString(response_data)
response = Settings.FromString(response_data)
except DecodeError:
# If we get a DecodeError, it means the data we read is not a valid