added protocol to change Device Setting (Type/Postion)
This commit is contained in:
Submodule Application/CLS updated: a9cfa7bc5e...2934954396
@@ -1,7 +1,6 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#define CLS_BSP_FDCAN
|
||||
|
||||
#ifdef CLS_BSP_FDCAN
|
||||
|
||||
#include "fdcan.h"
|
||||
|
||||
@@ -178,7 +178,18 @@ void DataClbk_cls_device_RequestList(void* msg, uint32_t length) {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
USBDataResonse(&list, cls_device_ResponseList_fields, cls_usb_PackageType_RESPONSE_DEVICE_LIST);
|
||||
}
|
||||
|
||||
}
|
||||
cls_device_UpdateDeviceSettings msg_cls_device_UpdateDeviceSettings;
|
||||
void DataClbk_cls_device_UpdateDeviceSettings(void* msg, uint32_t length)
|
||||
{
|
||||
DATA_CLBK_SETUP(cls_device_UpdateDeviceSettings);
|
||||
cls_device_UpdateDeviceSettings * msgs = &msg_cls_device_UpdateDeviceSettings;
|
||||
if(msgs->position_count >= 2) {
|
||||
CLS_Position_t pos;
|
||||
pos.p0 = msgs->position[0];
|
||||
pos.p1 = msgs->position[1];
|
||||
CLS_SendEventChangeTypePostion(msgs->device, msgs->type, pos);
|
||||
}
|
||||
}
|
||||
@@ -55,6 +55,7 @@ union {
|
||||
cls_firmware_Done msg_cls_firmware_Done;
|
||||
cls_device_RequestList msg_cls_device_RequestList;
|
||||
cls_device_ResponseList msg_cls_device_ResponseList;
|
||||
cls_device_UpdateDeviceSettings msg_cls_device_UpdateDeviceSettings;
|
||||
cls_light_GlobalBrightness msg_cls_light_GlobalBrightness;
|
||||
cls_light_GlobalTheme msg_cls_light_GlobalTheme;
|
||||
cls_light_ThemeSettings msg_cls_light_ThemeSettings;
|
||||
@@ -111,6 +112,7 @@ message_handler_t message_handlers[] = {
|
||||
MESSAGE_HANDLER(cls_usb_PackageType_FIRMWAREPACKAGEACK, cls_firmware_PackageAck),
|
||||
MESSAGE_HANDLER(cls_usb_PackageType_REQUEST_DEVICE_LIST, cls_device_RequestList),
|
||||
MESSAGE_HANDLER(cls_usb_PackageType_RESPONSE_DEVICE_LIST, cls_device_ResponseList),
|
||||
MESSAGE_HANDLER(cls_usb_PackageType_UPDATE_DEVICE_SETTINGS, cls_device_UpdateDeviceSettings),
|
||||
MESSAGE_HANDLER(cls_usb_PackageType_LIGHT_GLOBAL_BRIGHT, cls_light_GlobalBrightness),
|
||||
MESSAGE_HANDLER(cls_usb_PackageType_LIGHT_GLOBAL_THEME, cls_light_GlobalTheme),
|
||||
MESSAGE_HANDLER(cls_usb_PackageType_LIGHT_SETTING_THEME, cls_light_ThemeSettings),
|
||||
|
||||
@@ -129,6 +129,7 @@ void DataClbk_cls_firmware_PackageAck(void* msg, uint32_t length);
|
||||
void DataClbk_cls_firmware_Done(void* msg, uint32_t length);
|
||||
void DataClbk_cls_device_ResponseList(void* msg, uint32_t length);
|
||||
void DataClbk_cls_device_RequestList(void* msg, uint32_t length);
|
||||
void DataClbk_cls_device_UpdateDeviceSettings(void* msg, uint32_t length);
|
||||
void DataClbk_cls_light_GlobalBrightness(void* msg, uint32_t length);
|
||||
void DataClbk_cls_light_GlobalTheme(void* msg, uint32_t length);
|
||||
void DataClbk_cls_light_ThemeSettings(void* msg, uint32_t length);
|
||||
|
||||
2
proto
2
proto
Submodule proto updated: 8317878782...eca57b1315
20
tools/set_device_type.py
Normal file
20
tools/set_device_type.py
Normal file
@@ -0,0 +1,20 @@
|
||||
from cls_device_pb2 import UpdateDeviceSettings, Type, Position
|
||||
from usb_pb2 import PackageType
|
||||
from vcp_driver import *
|
||||
|
||||
if __name__ == "__main__":
|
||||
ser = setup_connection()
|
||||
# Create a message
|
||||
request = UpdateDeviceSettings()
|
||||
request.device = 1
|
||||
request.type = Type.LIGHT
|
||||
request.position.append(Position.RIGHT)
|
||||
request.position.append(Position.FLOOR)
|
||||
# Serialize the request to a bytearray
|
||||
request_data = request.SerializeToString()
|
||||
|
||||
|
||||
print(request)
|
||||
print(request_data)
|
||||
# Send the request
|
||||
send_package(PackageType.UPDATE_DEVICE_SETTINGS, request_data, ser)
|
||||
Reference in New Issue
Block a user