56 #define DSM_API_VERSION 0x0207
118 int DsmApiOpen(DsmApiHandle_t handle,
const char *connection,
int flags);
243 int DsmApiGetDeviceDSID(uint16_t vendorId, uint16_t productId, uint8_t groupId, uint16_t revisionId, uint32_t serialNumber,
268 char **displayName,
char **hardwareInfo,
char **gtin);
307 int DeviceConfig_get_sync_8(DsmApiHandle_t handle,
dsid_t dSMdSID, uint16_t DeviceId, uint8_t ConfigClass, uint8_t ConfigIndex,
int timeout, uint8_t *Value);
321 int DeviceConfig_get_sync_16(DsmApiHandle_t handle,
dsid_t dSMdSID, uint16_t DeviceId, uint8_t ConfigClass, uint8_t ConfigIndex,
int timeout, uint16_t *Value);
362 int DeviceSensor_get_type_sync(DsmApiHandle_t handle,
dsid_t dSMdSID, uint16_t DeviceId, uint8_t SensorIndex,
int timeout, uint8_t *SensorPresent, uint8_t *SensorType, uint8_t *LastSensor);
459 int ZoneInfo_by_index(DsmApiHandle_t handle,
dsid_t dSMdSID, uint8_t ZoneIndex, uint16_t *ZoneId, uint8_t *VirtualZoneId, uint8_t *NumberOfGroups, uint8_t *Name);
513 int ZoneInfo_by_id(DsmApiHandle_t handle,
dsid_t dSMdSID, uint16_t ZoneIdReq, uint16_t *ZoneId, uint8_t *VirtualZoneId, uint8_t *NumberOfGroups, uint8_t *Name);
914 int ZoneProperties_get_scene_history(DsmApiHandle_t handle,
dsid_t dSMdSID, uint16_t ZoneId, uint8_t *HistorySize, uint8_t *GroupId_0, uint8_t *Scene_0, uint8_t *GroupId_1, uint8_t *Scene_1, uint8_t *GroupId_2, uint8_t *Scene_2, uint8_t *GroupId_3, uint8_t *Scene_3, uint8_t *GroupId_4, uint8_t *Scene_4, uint8_t *GroupId_5, uint8_t *Scene_5, uint8_t *GroupId_6, uint8_t *Scene_6);
944 typedef void (*
ZoneProperties_get_scene_history_response_callback_t)(uint8_t error_code,
void *arg,
dsid_t sourceId,
dsid_t destinationId, uint8_t HistorySize, uint8_t GroupId_0, uint8_t Scene_0, uint8_t GroupId_1, uint8_t Scene_1, uint8_t GroupId_2, uint8_t Scene_2, uint8_t GroupId_3, uint8_t Scene_3, uint8_t GroupId_4, uint8_t Scene_4, uint8_t GroupId_5, uint8_t Scene_5, uint8_t GroupId_6, uint8_t Scene_6);
1042 int ZoneGroupModify_add(DsmApiHandle_t handle,
dsid_t dSMdSID, uint16_t ZoneId, uint8_t GroupId, uint8_t StateMachineGroupId);
1147 int ZoneGroupInfo_by_index(DsmApiHandle_t handle,
dsid_t dSMdSID, uint16_t ZoneId, uint8_t Index, uint8_t *GroupId, uint8_t *StateMachineGroupId, uint16_t *NumberOfDevices, uint8_t *Name, uint8_t *StopTimeout, uint8_t *RemoteStopTimeout);
1207 int ZoneGroupInfo_by_id(DsmApiHandle_t handle,
dsid_t dSMdSID, uint16_t ZoneId, uint8_t GroupIdReq, uint8_t *GroupId, uint8_t *StateMachineGroupId, uint16_t *NumberOfDevices, uint8_t *Name, uint8_t *StopTimeout, uint8_t *RemoteStopTimeout);
1425 int ZoneGroupSceneInfo(DsmApiHandle_t handle,
dsid_t dSMdSID, uint16_t ZoneId, uint8_t GroupId, uint8_t SceneId, uint8_t *Name);
2261 int ZoneSensorPush(DsmApiHandle_t handle,
dsid_t dSMdSID, uint16_t ZoneId, uint32_t SourceDevice, uint8_t SensorType, uint16_t Value, uint8_t Precision);
2335 int DeviceInfo_by_index_only_active(DsmApiHandle_t handle,
dsid_t dSMdSID, uint16_t ZoneIdReq, uint16_t DeviceIndex, uint16_t *DeviceId, uint16_t *VendorId, uint16_t *ProductId, uint16_t *FunctionId, uint16_t *Version, uint16_t *ZoneId, uint8_t *State, uint8_t *Locked, uint8_t *OutputMode, uint8_t *LTMode, uint8_t *Groups, uint8_t *Name, uint32_t *SerialNumber);
2363 typedef void (*
DeviceInfo_by_index_only_active_response_callback_t)(uint8_t error_code,
void *arg,
dsid_t sourceId,
dsid_t destinationId, uint16_t DeviceId, uint16_t VendorId, uint16_t ProductId, uint16_t FunctionId, uint16_t Version, uint16_t ZoneId, uint8_t State, uint8_t Locked, uint8_t OutputMode, uint8_t LTMode,
const uint8_t *Groups,
const uint8_t *Name, uint32_t SerialNumber);
2409 int DeviceInfo_by_index_only_inactive(DsmApiHandle_t handle,
dsid_t dSMdSID, uint16_t ZoneIdReq, uint16_t DeviceIndex, uint16_t *DeviceId, uint16_t *VendorId, uint16_t *ProductId, uint16_t *FunctionId, uint16_t *Version, uint16_t *ZoneId, uint8_t *State, uint8_t *Locked, uint8_t *OutputMode, uint8_t *LTMode, uint8_t *Groups, uint8_t *Name, uint32_t *SerialNumber);
2437 typedef void (*
DeviceInfo_by_index_only_inactive_response_callback_t)(uint8_t error_code,
void *arg,
dsid_t sourceId,
dsid_t destinationId, uint16_t DeviceId, uint16_t VendorId, uint16_t ProductId, uint16_t FunctionId, uint16_t Version, uint16_t ZoneId, uint8_t State, uint8_t Locked, uint8_t OutputMode, uint8_t LTMode,
const uint8_t *Groups,
const uint8_t *Name, uint32_t SerialNumber);
2483 int DeviceInfo_by_index(DsmApiHandle_t handle,
dsid_t dSMdSID, uint16_t ZoneIdReq, uint16_t DeviceIndex, uint16_t *DeviceId, uint16_t *VendorId, uint16_t *ProductId, uint16_t *FunctionId, uint16_t *Version, uint16_t *ZoneId, uint8_t *State, uint8_t *Locked, uint8_t *OutputMode, uint8_t *LTMode, uint8_t *Groups, uint8_t *Name, uint32_t *SerialNumber);
2511 typedef void (*
DeviceInfo_by_index_response_callback_t)(uint8_t error_code,
void *arg,
dsid_t sourceId,
dsid_t destinationId, uint16_t DeviceId, uint16_t VendorId, uint16_t ProductId, uint16_t FunctionId, uint16_t Version, uint16_t ZoneId, uint8_t State, uint8_t Locked, uint8_t OutputMode, uint8_t LTMode,
const uint8_t *Groups,
const uint8_t *Name, uint32_t SerialNumber);
2556 int DeviceInfo_by_device_id(DsmApiHandle_t handle,
dsid_t dSMdSID, uint16_t DeviceIdReq, uint16_t *DeviceId, uint16_t *VendorId, uint16_t *ProductId, uint16_t *FunctionId, uint16_t *Version, uint16_t *ZoneId, uint8_t *State, uint8_t *Locked, uint8_t *OutputMode, uint8_t *LTMode, uint8_t *Groups, uint8_t *Name, uint32_t *SerialNumber);
2584 typedef void (*
DeviceInfo_by_device_id_response_callback_t)(uint8_t error_code,
void *arg,
dsid_t sourceId,
dsid_t destinationId, uint16_t DeviceId, uint16_t VendorId, uint16_t ProductId, uint16_t FunctionId, uint16_t Version, uint16_t ZoneId, uint8_t State, uint8_t Locked, uint8_t OutputMode, uint8_t LTMode,
const uint8_t *Groups,
const uint8_t *Name, uint32_t SerialNumber);
2616 int DeviceState(DsmApiHandle_t handle,
dsid_t dSMdSID, uint16_t DeviceId, uint8_t *ActiveFlag);
3111 int DeviceButtonInfo_by_device(DsmApiHandle_t handle,
dsid_t dSMdSID, uint16_t DeviceId, uint8_t *ButtonId, uint8_t *GroupMembership, uint8_t *Group, uint8_t *Flags);
3219 int DeviceBinaryInput_get_by_index(DsmApiHandle_t handle,
dsid_t dSMdSID, uint16_t DeviceId, uint8_t InputIndex, uint8_t *TargetGroupType, uint8_t *TargetGroup, uint8_t *BinaryInputType, uint8_t *ButtonId);
3897 int DeviceConfig_get(DsmApiHandle_t handle,
dsid_t dSMdSID, uint16_t DeviceId, uint8_t ConfigClass, uint8_t ConfigIndex);
3949 int DeviceConfig_set(DsmApiHandle_t handle,
dsid_t dSMdSID, uint16_t DeviceId, uint8_t ConfigClass, uint8_t ConfigIndex, uint8_t Value);
4168 __attribute__ ((deprecated))
4189 __attribute__ ((deprecated))
5021 int dSMInfo(DsmApiHandle_t handle,
dsid_t dSMdSID, uint32_t *HWVersion, uint32_t *ARMSWVersion, uint32_t *DSPSWVersion, uint16_t *ApiVersion,
dsid_t *DSID, uint8_t *Name);
5821 int dSMState(DsmApiHandle_t handle,
dsid_t dSMdSID, uint8_t *Hardware, uint8_t *DSP, uint8_t *Temperature, uint8_t *Config, uint8_t *dS485, uint8_t *Line);
6022 int dSMConfig_get_hash(DsmApiHandle_t handle,
dsid_t dSMdSID, uint32_t *Hash, uint32_t *ConfigurationCount, uint32_t *BinaryInputEventCount);
6093 int dSMStatistics_get_dS485(DsmApiHandle_t handle,
dsid_t dSMdSID, uint32_t *TxToken, uint16_t *TxStartupRequest, uint16_t *TxStartupResponse, uint16_t *TxJoinRequest, uint16_t *TxJoinResponse, uint16_t *TxGetAddressRequest, uint16_t *TxGetAddressResponse, uint16_t *TxSetAddressRequest, uint16_t *TxSetAddressResponse, uint16_t *TxSetSuccessorAddressRequest, uint16_t *TxSetSuccessorAddressResponse, uint16_t *TxResponse, uint16_t *TxDataRequest, uint16_t *TxDataResponse, uint16_t *TxDataEvent, uint16_t *RxResponse, uint16_t *RxDataRequest, uint16_t *RxDataResponse, uint16_t *RxDataEvent, uint16_t *StartRegisterStation, uint16_t *DoneRegisterStation, uint16_t *EnterOperational, uint16_t *SuccessorLost);
6131 typedef void (*
dSMStatistics_get_dS485_response_callback_t)(uint8_t error_code,
void *arg,
dsid_t sourceId,
dsid_t destinationId, uint32_t TxToken, uint16_t TxStartupRequest, uint16_t TxStartupResponse, uint16_t TxJoinRequest, uint16_t TxJoinResponse, uint16_t TxGetAddressRequest, uint16_t TxGetAddressResponse, uint16_t TxSetAddressRequest, uint16_t TxSetAddressResponse, uint16_t TxSetSuccessorAddressRequest, uint16_t TxSetSuccessorAddressResponse, uint16_t TxResponse, uint16_t TxDataRequest, uint16_t TxDataResponse, uint16_t TxDataEvent, uint16_t RxResponse, uint16_t RxDataRequest, uint16_t RxDataResponse, uint16_t RxDataEvent, uint16_t StartRegisterStation, uint16_t DoneRegisterStation, uint16_t EnterOperational, uint16_t SuccessorLost);
6326 int dSMStatistics_get_internals(DsmApiHandle_t handle,
dsid_t dSMdSID, uint32_t *RxShortUpstream, uint32_t *RxLongUpstream, uint32_t *TxDownstream, uint32_t *TxErrorSelectA, uint32_t *TxErrorSelectB, uint32_t *DSPResets, uint32_t *DSPMsgSizeError, uint32_t *DSPMsgMagicError, uint32_t *DSPMsgUnknown);
6350 typedef void (*
dSMStatistics_get_internals_response_callback_t)(uint8_t error_code,
void *arg,
dsid_t sourceId,
dsid_t destinationId, uint32_t RxShortUpstream, uint32_t RxLongUpstream, uint32_t TxDownstream, uint32_t TxErrorSelectA, uint32_t TxErrorSelectB, uint32_t DSPResets, uint32_t DSPMsgSizeError, uint32_t DSPMsgMagicError, uint32_t DSPMsgUnknown);
6450 int dSMStatistics_get_pool_margins(DsmApiHandle_t handle,
dsid_t dSMdSID, uint8_t *SmallPoolMargin, uint8_t *MediumPoolMargin, uint8_t *LargePoolMargin, uint8_t *FreescaleQueueMargin, uint8_t *MMIQueueMargin, uint8_t *dSMAPIQueueMargin, uint8_t *DatamodelQueueMargin, uint8_t *SelectBQueueMargin, uint8_t *SelectAQueueMargin, uint8_t *SPIQueueMargin, uint8_t *dS485QueueMargin, uint8_t *ReceiverQueueMargin, uint8_t *dSMAPIDeferredQueue, uint8_t *dS485TxMessageQueue, uint8_t *dS485DeferredTxMessageQueue, uint8_t *FreescaleDeferredQueue, uint8_t *MMIDeferredQueue, uint8_t *SelectADeferredQueue, uint8_t *SelectBDeferredCommandQueue, uint8_t *SelectBDeferredDsidQueue, uint8_t *SPIFrontPanelDeferredQueue, uint8_t *SPIPrioDeferredQueue, uint8_t *SPIDSPTxMessageQueue);
6488 typedef void (*
dSMStatistics_get_pool_margins_response_callback_t)(uint8_t error_code,
void *arg,
dsid_t sourceId,
dsid_t destinationId, uint8_t SmallPoolMargin, uint8_t MediumPoolMargin, uint8_t LargePoolMargin, uint8_t FreescaleQueueMargin, uint8_t MMIQueueMargin, uint8_t dSMAPIQueueMargin, uint8_t DatamodelQueueMargin, uint8_t SelectBQueueMargin, uint8_t SelectAQueueMargin, uint8_t SPIQueueMargin, uint8_t dS485QueueMargin, uint8_t ReceiverQueueMargin, uint8_t dSMAPIDeferredQueue, uint8_t dS485TxMessageQueue, uint8_t dS485DeferredTxMessageQueue, uint8_t FreescaleDeferredQueue, uint8_t MMIDeferredQueue, uint8_t SelectADeferredQueue, uint8_t SelectBDeferredCommandQueue, uint8_t SelectBDeferredDsidQueue, uint8_t SPIFrontPanelDeferredQueue, uint8_t SPIPrioDeferredQueue, uint8_t SPIDSPTxMessageQueue);
6524 int dSMStatistics_get_stop_timer(DsmApiHandle_t handle,
dsid_t dSMdSID, uint8_t Index, uint8_t *LocalZoneId, uint8_t *GroupId, uint8_t *ButtonId, uint8_t *TimeOut, uint32_t *TimerCount);
6722 int ImageMaintenance_get_image_info(DsmApiHandle_t handle,
dsid_t dSMdSID, uint32_t *ManufacturerId, uint32_t *DeviceId, uint32_t *ContentType, uint32_t *ContentSize, uint16_t *ContentCRC);
6881 int ImageTransfer_write_request(DsmApiHandle_t handle,
dsid_t dSMdSID, uint32_t ManufacturerId, uint32_t DeviceId, uint32_t ContentType, uint32_t ContentSize, uint16_t ContentCRC);
6965 int ImageTransfer_data(DsmApiHandle_t handle,
dsid_t dSMdSID, uint32_t PacketNr,
const uint8_t *Data, uint32_t *ExpectedPacketNr, uint32_t *ReceivedPacketNr);
7905 int dSMDebugMode_inject_short_upstream(DsmApiHandle_t handle,
dsid_t dSMdSID, uint16_t Source, uint8_t Circuit, uint8_t Key, uint8_t Click, uint8_t Sensor, uint8_t Resend, uint8_t Quality, uint8_t Flags);
7944 typedef void (*
dSMDebugMode_inject_short_upstream_request_callback_t)(uint8_t error_code,
void *arg,
dsid_t sourceId,
dsid_t destinationId, uint16_t Source, uint8_t Circuit, uint8_t Key, uint8_t Click, uint8_t Sensor, uint8_t Resend, uint8_t Quality, uint8_t Flags);
7965 int dSMDebugMode_inject_long_upstream(DsmApiHandle_t handle,
dsid_t dSMdSID, uint16_t Source, uint8_t Circuit, uint8_t Mainqualifier, uint8_t Subqualifier, uint32_t Data, uint8_t Quality, uint8_t Flags);
8003 typedef void (*
dSMDebugMode_inject_long_upstream_request_callback_t)(uint8_t error_code,
void *arg,
dsid_t sourceId,
dsid_t destinationId, uint16_t Source, uint8_t Circuit, uint8_t Mainqualifier, uint8_t Subqualifier, uint32_t Data, uint8_t Quality, uint8_t Flags);
8029 typedef void (*
EventCommunicationLog_upstream_short_event_callback_t)(uint8_t error_code,
void *arg,
dsid_t sourceId,
dsid_t destinationId, uint16_t DeviceId, uint8_t CircuitId, uint8_t Resend, uint8_t Sensor, uint8_t Key, uint8_t Click, uint8_t Quality, uint8_t Flags, uint8_t Crosstalk);
8052 typedef void (*
EventCommunicationLog_upstream_long_event_callback_t)(uint8_t error_code,
void *arg,
dsid_t sourceId,
dsid_t destinationId, uint16_t DeviceId, uint8_t CircuitId, uint8_t Mainqualifier, uint8_t Subqualifier, uint32_t Data, uint8_t Quality, uint8_t Flags, uint8_t Crosstalk);