BaosModuleConfig SDK 2.2.0
Loading...
Searching...
No Matches
module_config_api.h
Go to the documentation of this file.
1//
2// Copyright (c) 2002-2021 WEINZIERL ENGINEERING GmbH
3// All rights reserved.
4//
5// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
6// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
7// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
8// SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY DAMAGES OR OTHER LIABILITY,
9// WHETHER IN CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
10// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE
11//
12
13#ifndef __MODULE_CONFIG_API_H__
14#define __MODULE_CONFIG_API_H__
15
17
42#ifdef __cplusplus
43extern "C"
44{
45#endif
46
47/*******************************
48** Defines
49********************************/
50
51#define MC_FDSK_LEN (16)
54/*******************************
55** Structures
56********************************/
57
68typedef struct mc_t
69{
70 uint8_t* manufacturer_id;
72 uint8_t* order_info;
73 uint8_t* hardware_type;
74 uint8_t* serial_number;
75 uint8_t* fdsk;
78
79/*******************************
80** Functions
81********************************/
82
92moduleConfig_API error_t mc_set_sp(int32_t sp);
93
103
111moduleConfig_API error_t mc_set_ind_addr(uint16_t ind_addr);
112
120moduleConfig_API error_t mc_get_ind_addr(uint16_t* ind_addr);
121
129moduleConfig_API error_t mc_set_auth_key(const uint32_t authorize_key);
130
139
147moduleConfig_API error_t mc_write_auth_key(const uint32_t authorize_key);
148
160moduleConfig_API error_t mc_read_manufacturer_id(uint8_t manufacturer_id[2]);
161
172moduleConfig_API error_t mc_write_manufacturer_id(uint8_t manufacturer_id[2]);
173
183moduleConfig_API error_t mc_read_manufacturer_data(uint8_t manufacturer_data[4]);
184
195moduleConfig_API error_t mc_write_manufacturer_data(uint8_t manufacturer_data[4]);
196
206moduleConfig_API error_t mc_read_order_info(uint8_t order_info[10]);
207
218moduleConfig_API error_t mc_write_order_info(uint8_t order_info[10]);
219
229moduleConfig_API error_t mc_read_hardware_type(uint8_t hardware_type[6]);
230
241moduleConfig_API error_t mc_write_hardware_type(uint8_t hardware_type[6]);
242
252moduleConfig_API error_t mc_read_serial_number(uint8_t serial_number[6]);
253
264moduleConfig_API error_t mc_write_serial_number(uint8_t serial_number[6]);
265
276
286moduleConfig_API error_t mc_read_fdsk_lock(bool_t* status);
287
298moduleConfig_API error_t mc_lock_fdsk(const uint8_t fdsk[MC_FDSK_LEN]);
299
312moduleConfig_API error_t mc_read_config(mc_t* module_config);
313
328moduleConfig_API error_t mc_write_config(mc_t module_config, uint32_t* authorize_key);
329
341moduleConfig_API error_t mc_build_knx_qr_string_human(const uint8_t serial_number[6], const uint8_t fdsk[MC_FDSK_LEN],
342 char qr[41 + 1]);
343
355moduleConfig_API error_t mc_extract_knx_qr_string_human(const char* qr, uint8_t serial_number[6], uint8_t fdsk[MC_FDSK_LEN]);
356
369moduleConfig_API error_t mc_encode_svg_string(const char* qr, char* svg_string, uint32_t* length);
370
383moduleConfig_API error_t mc_encode_ascii_string(const char* qr, char* ascii_string, uint32_t* length);
384
385
386#ifdef __cplusplus
387}
388#endif
389
390#endif /* __MODULE_CONFIG_API_H__ */
moduleConfig_API error_t mc_set_auth_key(const uint32_t authorize_key)
Sets the used authorize key of the baos module to configure.
moduleConfig_API error_t mc_write_fdsk(uint8_t fdsk[MC_FDSK_LEN])
Writes the FDSK (Factory Default Setup Key) to the baos module to configure.
moduleConfig_API error_t mc_write_config(mc_t module_config, uint32_t *authorize_key)
Writes the whole basic configuration (manufacturer id, manufacturer data, order info,...
moduleConfig_API error_t mc_write_manufacturer_id(uint8_t manufacturer_id[2])
Writes the manufacturer id to the baos module to configure.
moduleConfig_API error_t mc_write_serial_number(uint8_t serial_number[6])
Writes the serial number to the baos module to configure.
moduleConfig_API error_t mc_read_serial_number(uint8_t serial_number[6])
Reads the serial number from a baos module.
moduleConfig_API error_t mc_lock_fdsk(const uint8_t fdsk[MC_FDSK_LEN])
After call this command (with the current valid FDSK) the FDSK could no more changed.
moduleConfig_API error_t mc_write_auth_key(const uint32_t authorize_key)
Writes a new authorize key to the baos module to configure.
moduleConfig_API error_t mc_read_manufacturer_id(uint8_t manufacturer_id[2])
Reads the manufacturer id from a baos module.
moduleConfig_API error_t mc_encode_ascii_string(const char *qr, char *ascii_string, uint32_t *length)
Takes a humand readable QR string (41 character e.g.
moduleConfig_API error_t mc_write_manufacturer_data(uint8_t manufacturer_data[4])
Writes the manufacturer data to the baos module to configure.
moduleConfig_API error_t mc_read_config(mc_t *module_config)
Reads the whole configuration (manufacturer id, manufacturer data, order info, hardware type,...
moduleConfig_API error_t mc_encode_svg_string(const char *qr, char *svg_string, uint32_t *length)
Takes a humand readable QR string (41 character e.g.
moduleConfig_API error_t mc_set_sp(int32_t sp)
Sets the service port for the ModuleConfiguration.
moduleConfig_API error_t mc_write_hardware_type(uint8_t hardware_type[6])
Writes the hardware type to the baos module to configure.
moduleConfig_API error_t mc_build_knx_qr_string_human(const uint8_t serial_number[6], const uint8_t fdsk[MC_FDSK_LEN], char qr[41+1])
Builds the humand readable QR string of the KNX device certificate Returns 41 character string (crc4 ...
moduleConfig_API error_t mc_read_manufacturer_data(uint8_t manufacturer_data[4])
Reads the manufacturer data from a baos module.
moduleConfig_API error_t mc_get_ind_addr(uint16_t *ind_addr)
Gets the individual address of the baos module to configure.
moduleConfig_API error_t mc_clear_auth_key()
Clears the authorize key to be used when writing properties to the baos module to configure.
moduleConfig_API error_t mc_read_fdsk_lock(bool_t *status)
Reads the FDSK lock status.
moduleConfig_API error_t mc_read_hardware_type(uint8_t hardware_type[6])
Reads the hardware type from a baos module.
moduleConfig_API error_t mc_set_ind_addr(uint16_t ind_addr)
Sets the individual address of the baos module to configure.
moduleConfig_API error_t mc_remove_sp()
Remove the used service port from the ModuleConfiguration.
moduleConfig_API error_t mc_read_order_info(uint8_t order_info[10])
Reads the order info from a baos module.
moduleConfig_API error_t mc_extract_knx_qr_string_human(const char *qr, uint8_t serial_number[6], uint8_t fdsk[MC_FDSK_LEN])
Extracts the KNX serial number and FDSK from the humand readable QR string of the KNX device certific...
moduleConfig_API error_t mc_write_order_info(uint8_t order_info[10])
Writes the order info to the baos module to configure.
#define MC_FDSK_LEN
The Length of a factory default setup key (FDSK)
Definition module_config_api.h:51
#define moduleConfig_API
Definition module_config_config.h:41
Structure holding the baos module configuration.
Definition module_config_api.h:69
uint8_t * order_info
manufacturer specific order information
Definition module_config_api.h:72
uint8_t * hardware_type
an identifier for the device hardware
Definition module_config_api.h:73
uint8_t * fdsk
the KNX Serial Number of the device
Definition module_config_api.h:75
uint8_t * manufacturer_id
the KNX ID of the manufacturer
Definition module_config_api.h:70
uint8_t * serial_number
the KNX Serial Number of the device
Definition module_config_api.h:74
uint8_t * manufacturer_data
freely usable data by the manufacturer
Definition module_config_api.h:71