mesh: streamline mesh-access-parser uint getter names

This commit is contained in:
Matthias Ringwald 2020-03-29 19:25:16 +02:00
parent edc441d25e
commit ad3a646c65
11 changed files with 154 additions and 155 deletions

View File

@ -538,31 +538,31 @@ uint16_t mesh_access_parser_available(mesh_access_parser_state_t * state){
return state->len;
}
uint8_t mesh_access_parser_get_u8(mesh_access_parser_state_t * state){
uint8_t mesh_access_parser_get_uint8(mesh_access_parser_state_t * state){
uint8_t value = *state->data;
mesh_access_parser_skip(state, 1);
return value;
}
uint16_t mesh_access_parser_get_u16(mesh_access_parser_state_t * state){
uint16_t mesh_access_parser_get_uint16(mesh_access_parser_state_t * state){
uint16_t value = little_endian_read_16(state->data, 0);
mesh_access_parser_skip(state, 2);
return value;
}
uint32_t mesh_access_parser_get_u24(mesh_access_parser_state_t * state){
uint32_t mesh_access_parser_get_uint24(mesh_access_parser_state_t * state){
uint32_t value = little_endian_read_24(state->data, 0);
mesh_access_parser_skip(state, 3);
return value;
}
uint32_t mesh_access_parser_get_u32(mesh_access_parser_state_t * state){
uint32_t mesh_access_parser_get_uint32(mesh_access_parser_state_t * state){
uint32_t value = little_endian_read_32(state->data, 0);
mesh_access_parser_skip(state, 4);
return value;
}
void mesh_access_parser_get_u128(mesh_access_parser_state_t * state, uint8_t * dest){
void mesh_access_parser_get_uint128(mesh_access_parser_state_t * state, uint8_t * dest){
reverse_128( state->data, dest);
mesh_access_parser_skip(state, 16);
}
@ -580,20 +580,20 @@ void mesh_access_parser_get_key(mesh_access_parser_state_t * state, uint8_t * de
uint32_t mesh_access_parser_get_model_identifier(mesh_access_parser_state_t * parser){
uint16_t vendor_id = BLUETOOTH_COMPANY_ID_BLUETOOTH_SIG_INC;
if (mesh_access_parser_available(parser) == 4){
vendor_id = mesh_access_parser_get_u16(parser);
vendor_id = mesh_access_parser_get_uint16(parser);
}
uint16_t model_id = mesh_access_parser_get_u16(parser);
uint16_t model_id = mesh_access_parser_get_uint16(parser);
return mesh_model_get_model_identifier(vendor_id, model_id);
}
uint32_t mesh_access_parser_get_sig_model_identifier(mesh_access_parser_state_t * parser){
uint16_t model_id = mesh_access_parser_get_u16(parser);
uint16_t model_id = mesh_access_parser_get_uint16(parser);
return mesh_model_get_model_identifier(BLUETOOTH_COMPANY_ID_BLUETOOTH_SIG_INC, model_id);
}
uint32_t mesh_access_parser_get_vendor_model_identifier(mesh_access_parser_state_t * parser){
uint16_t vendor_id = mesh_access_parser_get_u16(parser);
uint16_t model_id = mesh_access_parser_get_u16(parser);
uint16_t vendor_id = mesh_access_parser_get_uint16(parser);
uint16_t model_id = mesh_access_parser_get_uint16(parser);
return mesh_model_get_model_identifier(vendor_id, model_id);
}

View File

@ -236,17 +236,16 @@ int mesh_access_pdu_get_opcode(mesh_pdu_t * pdu, uint32_t * opcode, uint16_t * o
int mesh_access_parser_init(mesh_access_parser_state_t * state, mesh_pdu_t * pdu);
void mesh_access_parser_skip(mesh_access_parser_state_t * state, uint16_t bytes_to_skip);
uint16_t mesh_access_parser_available(mesh_access_parser_state_t * state);
uint8_t mesh_access_parser_get_u8(mesh_access_parser_state_t * state);
uint16_t mesh_access_parser_get_u16(mesh_access_parser_state_t * state);
uint32_t mesh_access_parser_get_u24(mesh_access_parser_state_t * state);
uint32_t mesh_access_parser_get_u32(mesh_access_parser_state_t * state);
void mesh_access_parser_get_u128(mesh_access_parser_state_t * state, uint8_t * dest);
uint8_t mesh_access_parser_get_uint8(mesh_access_parser_state_t * state);
uint16_t mesh_access_parser_get_uint16(mesh_access_parser_state_t * state);
uint32_t mesh_access_parser_get_uint24(mesh_access_parser_state_t * state);
uint32_t mesh_access_parser_get_uint32(mesh_access_parser_state_t * state);
void mesh_access_parser_get_uint128(mesh_access_parser_state_t * state, uint8_t * dest);
void mesh_access_parser_get_label_uuid(mesh_access_parser_state_t * state, uint8_t * dest);
void mesh_access_parser_get_key(mesh_access_parser_state_t * state, uint8_t * dest);
uint32_t mesh_access_parser_get_model_identifier(mesh_access_parser_state_t * parser);
uint32_t mesh_access_parser_get_sig_model_identifier(mesh_access_parser_state_t * parser);
uint32_t mesh_access_parser_get_vendor_model_identifier(mesh_access_parser_state_t * parser);
uint32_t mesh_access_parser_get_model_identifier(mesh_access_parser_state_t * parser);
// message builder
void mesh_access_message_free(mesh_upper_transport_pdu_t * upper);

View File

@ -957,7 +957,7 @@ static inline void mesh_configuration_client_handle_uint8_value(mesh_model_t *me
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint8_t value = mesh_access_parser_get_u8(&parser);
uint8_t value = mesh_access_parser_get_uint8(&parser);
uint8_t event[7];
int pos = 0;
@ -991,8 +991,8 @@ static void mesh_configuration_client_relay_handler(mesh_model_t *mesh_model, me
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint8_t relay = mesh_access_parser_get_u8(&parser);
uint8_t retransmition = mesh_access_parser_get_u8(&parser);
uint8_t relay = mesh_access_parser_get_uint8(&parser);
uint8_t retransmition = mesh_access_parser_get_uint8(&parser);
uint8_t event[9];
@ -1015,17 +1015,17 @@ static void mesh_configuration_client_relay_handler(mesh_model_t *mesh_model, me
static void mesh_configuration_client_model_publication_handler(mesh_model_t *mesh_model, mesh_pdu_t * pdu){
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint8_t status = mesh_access_parser_get_u8(&parser);
uint16_t publish_addres = mesh_access_parser_get_u16(&parser);
uint8_t status = mesh_access_parser_get_uint8(&parser);
uint16_t publish_addres = mesh_access_parser_get_uint16(&parser);
uint16_t value = mesh_access_parser_get_u16(&parser);
uint16_t value = mesh_access_parser_get_uint16(&parser);
uint16_t appkey_index = value & 0xFFF;
uint8_t credential_flag = (value & 0x1000) >> 12;
uint8_t publish_ttl = mesh_access_parser_get_u8(&parser);
uint8_t publish_period = mesh_access_parser_get_u8(&parser);
uint8_t publish_ttl = mesh_access_parser_get_uint8(&parser);
uint8_t publish_period = mesh_access_parser_get_uint8(&parser);
uint8_t retransmit = mesh_access_parser_get_u8(&parser);
uint8_t retransmit = mesh_access_parser_get_uint8(&parser);
uint8_t publish_retransmit_count = retransmit & 0x111;
uint8_t publish_retransmit_interval_steps = retransmit >> 5;
uint32_t model_identifier = mesh_access_parser_get_model_identifier(&parser);
@ -1062,8 +1062,8 @@ static void mesh_configuration_client_model_publication_handler(mesh_model_t *me
static void mesh_configuration_client_model_subscription_handler(mesh_model_t *mesh_model, mesh_pdu_t * pdu){
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint8_t status = mesh_access_parser_get_u8(&parser);
uint16_t address = mesh_access_parser_get_u16(&parser);
uint8_t status = mesh_access_parser_get_uint8(&parser);
uint16_t address = mesh_access_parser_get_uint16(&parser);
uint32_t model_identifier = mesh_access_parser_get_model_identifier(&parser);
uint8_t event[12];
@ -1089,8 +1089,8 @@ static void mesh_configuration_client_model_subscription_handler(mesh_model_t *m
static void mesh_configuration_client_model_subscription_event(mesh_model_t *mesh_model, mesh_pdu_t * pdu, bool is_sig_model){
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint8_t status = mesh_access_parser_get_u8(&parser);
uint16_t element_address = mesh_access_parser_get_u16(&parser);
uint8_t status = mesh_access_parser_get_uint8(&parser);
uint16_t element_address = mesh_access_parser_get_uint16(&parser);
uint32_t model_identifier;
if (element_address != mesh_pdu_src(pdu)){
@ -1121,7 +1121,7 @@ static void mesh_configuration_client_model_subscription_event(mesh_model_t *mes
uint8_t i;
for (i = 0; i < list_size; i++){
event[pos++] = i;
little_endian_store_16(event, pos, mesh_access_parser_get_u16(&parser));
little_endian_store_16(event, pos, mesh_access_parser_get_uint16(&parser));
(*mesh_model->model_packet_handler)(HCI_EVENT_PACKET, 0, event, pos + 2);
}
mesh_access_message_processed(pdu);
@ -1138,7 +1138,7 @@ static void mesh_configuration_client_vendor_model_subscription_handler(mesh_mod
static void mesh_configuration_client_netkey_handler(mesh_model_t *mesh_model, mesh_pdu_t * pdu){
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint8_t status = mesh_access_parser_get_u8(&parser);
uint8_t status = mesh_access_parser_get_uint8(&parser);
uint8_t event[6];
int pos = 0;
@ -1173,7 +1173,7 @@ static void mesh_configuration_client_netkey_list_handler(mesh_model_t *mesh_mod
uint8_t i;
for (i = 0; i < list_size; i++){
event[pos++] = i;
little_endian_store_16(event, pos, mesh_access_parser_get_u16(&parser));
little_endian_store_16(event, pos, mesh_access_parser_get_uint16(&parser));
(*mesh_model->model_packet_handler)(HCI_EVENT_PACKET, 0, event, pos + 2);
}
mesh_access_message_processed(pdu);
@ -1182,8 +1182,8 @@ static void mesh_configuration_client_netkey_list_handler(mesh_model_t *mesh_mod
static void mesh_configuration_client_appkey_handler(mesh_model_t *mesh_model, mesh_pdu_t * pdu){
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint8_t status = mesh_access_parser_get_u8(&parser);
uint32_t netappkey_index = mesh_access_parser_get_u24(&parser);
uint8_t status = mesh_access_parser_get_uint8(&parser);
uint32_t netappkey_index = mesh_access_parser_get_uint24(&parser);
uint16_t netkey_index = netappkey_index >> 12;
uint16_t appkey_index = netappkey_index & 0xFFF;
@ -1225,7 +1225,7 @@ static void mesh_configuration_client_appkey_list_handler(mesh_model_t *mesh_mod
uint8_t i;
for (i = 0; i < list_size; i++){
event[pos++] = i;
uint32_t netappkey_index = mesh_access_parser_get_u24(&parser);
uint32_t netappkey_index = mesh_access_parser_get_uint24(&parser);
little_endian_store_16(event, pos, netappkey_index >> 12);
little_endian_store_16(event, pos + 2, netappkey_index & 0xFFF);
(*mesh_model->model_packet_handler)(HCI_EVENT_PACKET, 0, event, pos + 4);
@ -1236,9 +1236,9 @@ static void mesh_configuration_client_appkey_list_handler(mesh_model_t *mesh_mod
static void mesh_configuration_client_node_identity_handler(mesh_model_t *mesh_model, mesh_pdu_t * pdu){
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint8_t status = mesh_access_parser_get_u8(&parser);
uint16_t netkey_index = mesh_access_parser_get_u16(&parser);
uint8_t identity_status = mesh_access_parser_get_u8(&parser);
uint8_t status = mesh_access_parser_get_uint8(&parser);
uint16_t netkey_index = mesh_access_parser_get_uint16(&parser);
uint8_t identity_status = mesh_access_parser_get_uint8(&parser);
uint8_t event[9];
int pos = 0;
@ -1260,9 +1260,9 @@ static void mesh_configuration_client_node_identity_handler(mesh_model_t *mesh_m
static void mesh_configuration_client_model_app_handler(mesh_model_t *mesh_model, mesh_pdu_t * pdu){
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint8_t status = mesh_access_parser_get_u8(&parser);
uint16_t element_address = mesh_access_parser_get_u16(&parser);
uint16_t appkey_index = mesh_access_parser_get_u16(&parser);
uint8_t status = mesh_access_parser_get_uint8(&parser);
uint16_t element_address = mesh_access_parser_get_uint16(&parser);
uint16_t appkey_index = mesh_access_parser_get_uint16(&parser);
uint32_t model_id = 0;
if (element_address != mesh_pdu_src(pdu)){
@ -1270,9 +1270,9 @@ static void mesh_configuration_client_model_app_handler(mesh_model_t *mesh_model
}
if (mesh_access_parser_available(&parser) == 4){
model_id = mesh_access_parser_get_u32(&parser);
model_id = mesh_access_parser_get_uint32(&parser);
} else {
model_id = mesh_access_parser_get_u16(&parser);
model_id = mesh_access_parser_get_uint16(&parser);
}
uint8_t event[12];
@ -1299,8 +1299,8 @@ static void mesh_configuration_client_model_app_list_handler(mesh_model_t *mesh_
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint8_t status = mesh_access_parser_get_u8(&parser);
uint16_t element_address = mesh_access_parser_get_u16(&parser);
uint8_t status = mesh_access_parser_get_uint8(&parser);
uint16_t element_address = mesh_access_parser_get_uint16(&parser);
uint32_t model_identifier;
if (element_address != mesh_pdu_src(pdu)){
@ -1332,7 +1332,7 @@ static void mesh_configuration_client_model_app_list_handler(mesh_model_t *mesh_
uint8_t i;
for (i = 0; i < list_size; i++){
event[pos++] = i;
uint16_t appkey_index = mesh_access_parser_get_u16(&parser);
uint16_t appkey_index = mesh_access_parser_get_uint16(&parser);
little_endian_store_16(event, pos, appkey_index);
(*mesh_model->model_packet_handler)(HCI_EVENT_PACKET, 0, event, pos + 2);
}
@ -1365,7 +1365,7 @@ static void mesh_configuration_client_node_reset_handler(mesh_model_t *mesh_mode
static void mesh_configuration_client_friend_handler(mesh_model_t *mesh_model, mesh_pdu_t * pdu){
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint8_t friend_state = mesh_access_parser_get_u8(&parser);
uint8_t friend_state = mesh_access_parser_get_uint8(&parser);
uint8_t event[7];
int pos = 0;
@ -1385,9 +1385,9 @@ static void mesh_configuration_client_friend_handler(mesh_model_t *mesh_model, m
static void mesh_configuration_client_key_refresh_phase_handler(mesh_model_t *mesh_model, mesh_pdu_t * pdu){
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint8_t status = mesh_access_parser_get_u8(&parser);
uint16_t netkey_index = mesh_access_parser_get_u16(&parser);
uint8_t phase = mesh_access_parser_get_u8(&parser);
uint8_t status = mesh_access_parser_get_uint8(&parser);
uint16_t netkey_index = mesh_access_parser_get_uint16(&parser);
uint8_t phase = mesh_access_parser_get_uint8(&parser);
uint8_t event[9];
int pos = 0;
@ -1409,13 +1409,13 @@ static void mesh_configuration_client_key_refresh_phase_handler(mesh_model_t *me
static void mesh_configuration_client_heartbeat_publication_handler(mesh_model_t *mesh_model, mesh_pdu_t * pdu){
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint8_t status = mesh_access_parser_get_u8(&parser);
uint16_t dest = mesh_access_parser_get_u16(&parser);
uint8_t count = mesh_heartbeat_pwr2(mesh_access_parser_get_u8(&parser));
uint16_t period_s = mesh_heartbeat_pwr2(mesh_access_parser_get_u8(&parser));
uint8_t ttl = mesh_access_parser_get_u8(&parser);
uint16_t features = mesh_access_parser_get_u16(&parser);
uint16_t netkey_index = mesh_access_parser_get_u16(&parser);
uint8_t status = mesh_access_parser_get_uint8(&parser);
uint16_t dest = mesh_access_parser_get_uint16(&parser);
uint8_t count = mesh_heartbeat_pwr2(mesh_access_parser_get_uint8(&parser));
uint16_t period_s = mesh_heartbeat_pwr2(mesh_access_parser_get_uint8(&parser));
uint8_t ttl = mesh_access_parser_get_uint8(&parser);
uint16_t features = mesh_access_parser_get_uint16(&parser);
uint16_t netkey_index = mesh_access_parser_get_uint16(&parser);
uint8_t event[17];
int pos = 0;
@ -1444,13 +1444,13 @@ static void mesh_configuration_client_heartbeat_publication_handler(mesh_model_t
static void mesh_configuration_client_heartbeat_subscription_handler(mesh_model_t *mesh_model, mesh_pdu_t * pdu){
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint8_t status = mesh_access_parser_get_u8(&parser);
uint16_t source = mesh_access_parser_get_u16(&parser);
uint16_t dest = mesh_access_parser_get_u16(&parser);
uint16_t period_s = mesh_heartbeat_pwr2(mesh_access_parser_get_u8(&parser));
uint16_t count = mesh_heartbeat_pwr2(mesh_access_parser_get_u8(&parser));
uint8_t min_hops = mesh_access_parser_get_u8(&parser);
uint8_t max_hops = mesh_access_parser_get_u8(&parser);
uint8_t status = mesh_access_parser_get_uint8(&parser);
uint16_t source = mesh_access_parser_get_uint16(&parser);
uint16_t dest = mesh_access_parser_get_uint16(&parser);
uint16_t period_s = mesh_heartbeat_pwr2(mesh_access_parser_get_uint8(&parser));
uint16_t count = mesh_heartbeat_pwr2(mesh_access_parser_get_uint8(&parser));
uint8_t min_hops = mesh_access_parser_get_uint8(&parser);
uint8_t max_hops = mesh_access_parser_get_uint8(&parser);
uint8_t event[16];
int pos = 0;
@ -1479,8 +1479,8 @@ static void mesh_configuration_client_heartbeat_subscription_handler(mesh_model_
static void mesh_configuration_client_low_power_node_poll_timeout_handler(mesh_model_t *mesh_model, mesh_pdu_t * pdu){
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint16_t lpn_address = mesh_access_parser_get_u16(&parser);
uint32_t poll_timeout = mesh_access_parser_get_u24(&parser);
uint16_t lpn_address = mesh_access_parser_get_uint16(&parser);
uint32_t poll_timeout = mesh_access_parser_get_uint24(&parser);
uint8_t event[11];
int pos = 0;
@ -1505,7 +1505,7 @@ static void mesh_configuration_client_low_power_node_poll_timeout_handler(mesh_m
static void mesh_configuration_client_network_transmit_handler(mesh_model_t *mesh_model, mesh_pdu_t * pdu){
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint8_t value = mesh_access_parser_get_u8(&parser);
uint8_t value = mesh_access_parser_get_uint8(&parser);
uint8_t transmit_count = value >> 5;
uint8_t transmit_interval_steps_10ms = value & 0x1F;

View File

@ -334,7 +334,7 @@ static void config_beacon_set_handler(mesh_model_t *mesh_model, mesh_pdu_t * pdu
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint8_t beacon_enabled = mesh_access_parser_get_u8(&parser);
uint8_t beacon_enabled = mesh_access_parser_get_uint8(&parser);
// beacon valid
if (beacon_enabled < MESH_FOUNDATION_STATE_NOT_SUPPORTED) {
@ -370,7 +370,7 @@ static void config_default_ttl_set_handler(mesh_model_t *mesh_model, mesh_pdu_t
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint8_t new_ttl = mesh_access_parser_get_u8(&parser);
uint8_t new_ttl = mesh_access_parser_get_uint8(&parser);
// validate (0x01 and > 0x7f are prohibited)
if (new_ttl <= 0x7f && new_ttl != 0x01) {
@ -408,7 +408,7 @@ static void config_friend_set_handler(mesh_model_t *mesh_model, mesh_pdu_t * pdu
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint8_t new_friend_state = mesh_access_parser_get_u8(&parser);
uint8_t new_friend_state = mesh_access_parser_get_uint8(&parser);
// validate
if (new_friend_state < MESH_FOUNDATION_STATE_NOT_SUPPORTED) {
@ -446,7 +446,7 @@ static void config_gatt_proxy_set_handler(mesh_model_t *mesh_model, mesh_pdu_t *
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint8_t enabled = mesh_access_parser_get_u8(&parser);
uint8_t enabled = mesh_access_parser_get_uint8(&parser);
// validate
if (enabled < MESH_FOUNDATION_STATE_NOT_SUPPORTED) {
@ -489,8 +489,8 @@ static void config_relay_set_handler(mesh_model_t *mesh_model, mesh_pdu_t * pdu)
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
// check if valid
uint8_t relay = mesh_access_parser_get_u8(&parser);
uint8_t relay_retransmit = mesh_access_parser_get_u8(&parser);
uint8_t relay = mesh_access_parser_get_uint8(&parser);
uint8_t relay_retransmit = mesh_access_parser_get_uint8(&parser);
// check if valid
if (relay <= 1) {
@ -533,7 +533,7 @@ static void config_model_network_transmit_set_handler(mesh_model_t * mesh_model,
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint8_t new_ttl = mesh_access_parser_get_u8(&parser);
uint8_t new_ttl = mesh_access_parser_get_uint8(&parser);
// store
mesh_foundation_network_transmit_set(new_ttl);
@ -610,7 +610,7 @@ static void config_netkey_add_handler(mesh_model_t * mesh_model, mesh_pdu_t * pd
// get params
uint8_t new_netkey[16];
uint16_t new_netkey_index = mesh_access_parser_get_u16(&parser);
uint16_t new_netkey_index = mesh_access_parser_get_uint16(&parser);
mesh_access_parser_get_key(&parser, new_netkey);
uint8_t status;
@ -695,7 +695,7 @@ static void config_netkey_update_handler(mesh_model_t * mesh_model, mesh_pdu_t *
// get params
uint8_t new_netkey[16];
uint16_t netkey_index = mesh_access_parser_get_u16(&parser);
uint16_t netkey_index = mesh_access_parser_get_uint16(&parser);
mesh_access_parser_get_key(&parser, new_netkey);
// get existing subnet
@ -741,7 +741,7 @@ static void config_netkey_delete_handler(mesh_model_t * mesh_model, mesh_pdu_t *
mesh_access_parser_init(&parser, (mesh_pdu_t *) pdu);
// get params
uint16_t netkey_index_to_remove = mesh_access_parser_get_u16(&parser);
uint16_t netkey_index_to_remove = mesh_access_parser_get_uint16(&parser);
// get message netkey
uint16_t netkey_index_pdu = mesh_pdu_netkey_index(pdu);
@ -859,7 +859,7 @@ static void config_appkey_add_handler(mesh_model_t *mesh_model, mesh_pdu_t * pdu
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
// netkey and appkey index
uint32_t netkey_and_appkey_index = mesh_access_parser_get_u24(&parser);
uint32_t netkey_and_appkey_index = mesh_access_parser_get_uint24(&parser);
uint16_t netkey_index = netkey_and_appkey_index & 0xfff;
uint16_t appkey_index = netkey_and_appkey_index >> 12;
@ -927,7 +927,7 @@ static void config_appkey_update_handler(mesh_model_t *mesh_model, mesh_pdu_t *
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
// netkey and appkey index
uint32_t netkey_and_appkey_index = mesh_access_parser_get_u24(&parser);
uint32_t netkey_and_appkey_index = mesh_access_parser_get_uint24(&parser);
uint16_t netkey_index = netkey_and_appkey_index & 0xfff;
uint16_t appkey_index = netkey_and_appkey_index >> 12;
@ -1000,7 +1000,7 @@ static void config_appkey_delete_handler(mesh_model_t *mesh_model, mesh_pdu_t *
mesh_access_parser_init(&parser, (mesh_pdu_t *) pdu);
// netkey and appkey index
uint32_t netkey_and_appkey_index = mesh_access_parser_get_u24(&parser);
uint32_t netkey_and_appkey_index = mesh_access_parser_get_uint24(&parser);
uint16_t netkey_index = netkey_and_appkey_index & 0xfff;
uint16_t appkey_index = netkey_and_appkey_index >> 12;
@ -1025,7 +1025,7 @@ static void config_appkey_delete_handler(mesh_model_t *mesh_model, mesh_pdu_t *
static void config_appkey_get_handler(mesh_model_t *mesh_model, mesh_pdu_t * pdu) {
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t *) pdu);
uint16_t netkey_index = mesh_access_parser_get_u16(&parser);
uint16_t netkey_index = mesh_access_parser_get_uint16(&parser);
config_appkey_list(mesh_model, mesh_pdu_netkey_index(pdu), mesh_pdu_src(pdu), netkey_index);
mesh_access_message_processed(pdu);
@ -1074,7 +1074,7 @@ static void config_model_subscription_get_handler(mesh_model_t *mesh_model, mesh
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint16_t element_address = mesh_access_parser_get_u16(&parser);
uint16_t element_address = mesh_access_parser_get_uint16(&parser);
uint32_t model_identifier = mesh_access_parser_get_model_identifier(&parser);
uint8_t status = MESH_FOUNDATION_STATUS_SUCCESS;
@ -1099,8 +1099,8 @@ static void config_model_subscription_add_handler(mesh_model_t *mesh_model, mesh
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint16_t element_address = mesh_access_parser_get_u16(&parser);
uint16_t address = mesh_access_parser_get_u16(&parser);
uint16_t element_address = mesh_access_parser_get_uint16(&parser);
uint16_t address = mesh_access_parser_get_uint16(&parser);
uint32_t model_identifier = mesh_access_parser_get_model_identifier(&parser);
uint8_t status = MESH_FOUNDATION_STATUS_SUCCESS;
@ -1156,7 +1156,7 @@ static void config_model_subscription_virtual_address_add_handler(mesh_model_t *
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
// ElementAddress - Address of the element - should be us
configuration_server_element_address = mesh_access_parser_get_u16(&parser);
configuration_server_element_address = mesh_access_parser_get_uint16(&parser);
// store label uuid
mesh_access_parser_get_label_uuid(&parser, configuration_server_label_uuid);
@ -1181,8 +1181,8 @@ static void config_model_subscription_overwrite_handler(mesh_model_t *mesh_model
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint16_t element_address = mesh_access_parser_get_u16(&parser);
uint16_t address = mesh_access_parser_get_u16(&parser);
uint16_t element_address = mesh_access_parser_get_uint16(&parser);
uint16_t address = mesh_access_parser_get_uint16(&parser);
uint32_t model_identifier = mesh_access_parser_get_model_identifier(&parser);
uint8_t status = MESH_FOUNDATION_STATUS_SUCCESS;
@ -1245,7 +1245,7 @@ static void config_model_subscription_virtual_address_overwrite_handler(mesh_mod
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
// ElementAddress - Address of the element - should be us
configuration_server_element_address = mesh_access_parser_get_u16(&parser);
configuration_server_element_address = mesh_access_parser_get_uint16(&parser);
// store label uuid
mesh_access_parser_get_label_uuid(&parser, configuration_server_label_uuid);
@ -1269,8 +1269,8 @@ static void config_model_subscription_delete_handler(mesh_model_t *mesh_model, m
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint16_t element_address = mesh_access_parser_get_u16(&parser);
uint16_t address = mesh_access_parser_get_u16(&parser);
uint16_t element_address = mesh_access_parser_get_uint16(&parser);
uint16_t address = mesh_access_parser_get_uint16(&parser);
uint32_t model_identifier = mesh_access_parser_get_model_identifier(&parser);
uint8_t status = MESH_FOUNDATION_STATUS_SUCCESS;
@ -1293,7 +1293,7 @@ static void config_model_subscription_virtual_address_delete_handler(mesh_model_
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint16_t element_address = mesh_access_parser_get_u16(&parser);
uint16_t element_address = mesh_access_parser_get_uint16(&parser);
mesh_access_parser_get_label_uuid(&parser, configuration_server_label_uuid);
uint32_t model_identifier = mesh_access_parser_get_model_identifier(&parser);
@ -1317,7 +1317,7 @@ static void config_model_subscription_delete_all_handler(mesh_model_t *mesh_mode
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint16_t element_address = mesh_access_parser_get_u16(&parser);
uint16_t element_address = mesh_access_parser_get_uint16(&parser);
uint32_t model_identifier = mesh_access_parser_get_model_identifier(&parser);
uint8_t status = MESH_FOUNDATION_STATUS_SUCCESS;
@ -1389,8 +1389,8 @@ static void config_model_app_bind_handler(mesh_model_t *config_server_model, mes
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint16_t element_address = mesh_access_parser_get_u16(&parser);
uint16_t appkey_index = mesh_access_parser_get_u16(&parser);
uint16_t element_address = mesh_access_parser_get_uint16(&parser);
uint16_t appkey_index = mesh_access_parser_get_uint16(&parser);
uint32_t model_identifier = mesh_access_parser_get_model_identifier(&parser);
uint8_t status;
@ -1423,8 +1423,8 @@ static void config_model_app_unbind_handler(mesh_model_t *config_server_model, m
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint16_t element_address = mesh_access_parser_get_u16(&parser);
uint16_t appkey_index = mesh_access_parser_get_u16(&parser);
uint16_t element_address = mesh_access_parser_get_uint16(&parser);
uint16_t appkey_index = mesh_access_parser_get_uint16(&parser);
uint32_t model_identifier = mesh_access_parser_get_model_identifier(&parser);
uint8_t status;
@ -1457,7 +1457,7 @@ static void config_model_app_get_handler(mesh_model_t *config_server_model, mesh
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint16_t element_address = mesh_access_parser_get_u16(&parser);
uint16_t element_address = mesh_access_parser_get_uint16(&parser);
uint32_t model_identifier = mesh_access_parser_get_model_identifier(&parser);
uint8_t status;
@ -1546,24 +1546,24 @@ config_model_publication_set_handler(mesh_model_t *mesh_model, mesh_pdu_t * pdu)
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
// ElementAddress
uint16_t element_address = mesh_access_parser_get_u16(&parser);
uint16_t element_address = mesh_access_parser_get_uint16(&parser);
// PublishAddress, 16 bit
configuration_server_publication_model.address = mesh_access_parser_get_u16(&parser);
configuration_server_publication_model.address = mesh_access_parser_get_uint16(&parser);
// AppKeyIndex (12), CredentialFlag (1), RFU (3)
uint16_t temp = mesh_access_parser_get_u16(&parser);
uint16_t temp = mesh_access_parser_get_uint16(&parser);
configuration_server_publication_model.appkey_index = temp & 0x0fff;
configuration_server_publication_model.friendship_credential_flag = (temp >> 12) & 1;
// TTL
configuration_server_publication_model.ttl = mesh_access_parser_get_u8(&parser);
configuration_server_publication_model.ttl = mesh_access_parser_get_uint8(&parser);
// Period
configuration_server_publication_model.period = mesh_access_parser_get_u8(&parser);
configuration_server_publication_model.period = mesh_access_parser_get_uint8(&parser);
// Retransmit
configuration_server_publication_model.retransmit = mesh_access_parser_get_u8(&parser);
configuration_server_publication_model.retransmit = mesh_access_parser_get_uint8(&parser);
// Model Identifier
uint32_t model_identifier = mesh_access_parser_get_model_identifier(&parser);
@ -1654,18 +1654,18 @@ config_model_publication_virtual_address_set_handler(mesh_model_t *mesh_model,
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
// ElementAddress - Address of the element
configuration_server_element_address = mesh_access_parser_get_u16(&parser);
configuration_server_element_address = mesh_access_parser_get_uint16(&parser);
// store label uuid
mesh_access_parser_get_label_uuid(&parser, configuration_server_label_uuid);
// AppKeyIndex (12), CredentialFlag (1), RFU (3)
uint16_t temp = mesh_access_parser_get_u16(&parser);
uint16_t temp = mesh_access_parser_get_uint16(&parser);
configuration_server_publication_model.appkey_index = temp & 0x0fff;
configuration_server_publication_model.friendship_credential_flag = (temp >> 12) & 1;
configuration_server_publication_model.ttl = mesh_access_parser_get_u8(&parser);
configuration_server_publication_model.period = mesh_access_parser_get_u8(&parser);
configuration_server_publication_model.retransmit = mesh_access_parser_get_u8(&parser);
configuration_server_publication_model.ttl = mesh_access_parser_get_uint8(&parser);
configuration_server_publication_model.period = mesh_access_parser_get_uint8(&parser);
configuration_server_publication_model.retransmit = mesh_access_parser_get_uint8(&parser);
// Model Identifier
configuration_server_model_identifier = mesh_access_parser_get_model_identifier(&parser);
@ -1709,7 +1709,7 @@ config_model_publication_get_handler(mesh_model_t *mesh_model, mesh_pdu_t * pdu)
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
// ElementAddress - Address of the element - should be us
uint16_t element_address = mesh_access_parser_get_u16(&parser);
uint16_t element_address = mesh_access_parser_get_uint16(&parser);
// Model Identifier
uint32_t model_identifier = mesh_access_parser_get_model_identifier(&parser);
@ -1829,17 +1829,17 @@ static void config_heartbeat_publication_set_handler(mesh_model_t *mesh_model, m
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
// Destination address for Heartbeat messages
requested_publication.destination = mesh_access_parser_get_u16(&parser);
requested_publication.destination = mesh_access_parser_get_uint16(&parser);
// Number of Heartbeat messages to be sent
requested_publication.count = mesh_heartbeat_pwr2(mesh_access_parser_get_u8(&parser));
requested_publication.count = mesh_heartbeat_pwr2(mesh_access_parser_get_uint8(&parser));
// Period for sending Heartbeat messages
requested_publication.period_log = mesh_access_parser_get_u8(&parser);
requested_publication.period_log = mesh_access_parser_get_uint8(&parser);
// TTL to be used when sending Heartbeat messages
requested_publication.ttl = mesh_access_parser_get_u8(&parser);
requested_publication.ttl = mesh_access_parser_get_uint8(&parser);
// Bit field indicating features that trigger Heartbeat messages when changed
requested_publication.features = mesh_access_parser_get_u16(&parser) & MESH_HEARTBEAT_FEATURES_SUPPORTED_MASK;
requested_publication.features = mesh_access_parser_get_uint16(&parser) & MESH_HEARTBEAT_FEATURES_SUPPORTED_MASK;
// NetKey Index
requested_publication.netkey_index = mesh_access_parser_get_u16(&parser);
requested_publication.netkey_index = mesh_access_parser_get_uint16(&parser);
// store period as ms
requested_publication.period_ms = mesh_heartbeat_pwr2(requested_publication.period_log) * 1000;
@ -1929,11 +1929,11 @@ static void config_heartbeat_subscription_set_handler(mesh_model_t *mesh_model,
mesh_heartbeat_subscription_t requested_subscription;
// Destination address for Heartbeat messages
requested_subscription.source = mesh_access_parser_get_u16(&parser);
requested_subscription.source = mesh_access_parser_get_uint16(&parser);
// Destination address for Heartbeat messages
requested_subscription.destination = mesh_access_parser_get_u16(&parser);
requested_subscription.destination = mesh_access_parser_get_uint16(&parser);
// Period for sending Heartbeat messages
requested_subscription.period_log = mesh_access_parser_get_u8(&parser);
requested_subscription.period_log = mesh_access_parser_get_uint8(&parser);
// Hearbeat Subscription Soure must be unassigned or a unicast address
@ -2060,7 +2060,7 @@ static void config_key_refresh_phase_status(mesh_model_t *mesh_model, uint16_t n
static void config_key_refresh_phase_get_handler(mesh_model_t *mesh_model, mesh_pdu_t * pdu){
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint16_t netkey_index = mesh_access_parser_get_u16(&parser);
uint16_t netkey_index = mesh_access_parser_get_uint16(&parser);
mesh_subnet_t * subnet = mesh_subnet_get_by_netkey_index(netkey_index);
uint8_t status = MESH_FOUNDATION_STATUS_INVALID_NETKEY_INDEX;
@ -2078,8 +2078,8 @@ static void config_key_refresh_phase_get_handler(mesh_model_t *mesh_model, mesh_
static void config_key_refresh_phase_set_handler(mesh_model_t *mesh_model, mesh_pdu_t * pdu){
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint16_t netkey_index = mesh_access_parser_get_u16(&parser);
uint8_t key_refresh_phase_transition = mesh_access_parser_get_u8(&parser);
uint16_t netkey_index = mesh_access_parser_get_uint16(&parser);
uint8_t key_refresh_phase_transition = mesh_access_parser_get_uint8(&parser);
mesh_subnet_t * subnet = mesh_subnet_get_by_netkey_index(netkey_index);
uint8_t status = MESH_FOUNDATION_STATUS_INVALID_NETKEY_INDEX;
@ -2180,7 +2180,7 @@ static void config_node_identity_status(mesh_model_t *mesh_model, uint16_t netke
static void config_node_identity_get_handler(mesh_model_t *mesh_model, mesh_pdu_t * pdu){
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint16_t netkey_index = mesh_access_parser_get_u16(&parser);
uint16_t netkey_index = mesh_access_parser_get_uint16(&parser);
mesh_node_identity_state_t node_identity_state = MESH_NODE_IDENTITY_STATE_ADVERTISING_NOT_SUPPORTED;
uint8_t status = MESH_FOUNDATION_STATUS_SUCCESS;
@ -2195,8 +2195,8 @@ static void config_node_identity_get_handler(mesh_model_t *mesh_model, mesh_pdu_
static void config_node_identity_set_handler(mesh_model_t *mesh_model, mesh_pdu_t * pdu){
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint16_t netkey_index = mesh_access_parser_get_u16(&parser);
mesh_node_identity_state_t node_identity_state = (mesh_node_identity_state_t) mesh_access_parser_get_u8(&parser);
uint16_t netkey_index = mesh_access_parser_get_uint16(&parser);
mesh_node_identity_state_t node_identity_state = (mesh_node_identity_state_t) mesh_access_parser_get_uint8(&parser);
// ignore invalid state
if (node_identity_state >= MESH_NODE_IDENTITY_STATE_ADVERTISING_NOT_SUPPORTED) {

View File

@ -125,7 +125,7 @@ static void generic_default_transition_time_status_handler(mesh_model_t *mesh_mo
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint8_t transition_time_gdtt = mesh_access_parser_get_u8(&parser);
uint8_t transition_time_gdtt = mesh_access_parser_get_uint8(&parser);
uint8_t event[7] = {HCI_EVENT_MESH_META, 5, MESH_SUBEVENT_GENERIC_DEFAULT_TRANSITION_TIME};
int pos = 3;

View File

@ -93,7 +93,7 @@ static bool generic_default_transition_time_handle_set_message(mesh_model_t *mes
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint8_t time_gdtt = mesh_access_parser_get_u8(&parser);
uint8_t time_gdtt = mesh_access_parser_get_uint8(&parser);
uint8_t num_steps = mesh_access_transitions_num_steps_from_gdtt(time_gdtt);
// check for valid value

View File

@ -221,13 +221,13 @@ static void generic_level_status_handler(mesh_model_t *mesh_model, mesh_pdu_t *
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint8_t present_value = mesh_access_parser_get_u8(&parser);
uint8_t present_value = mesh_access_parser_get_uint8(&parser);
uint8_t target_value = 0;
uint8_t remaining_time_gdtt = 0;
if (mesh_access_parser_available(&parser) == 2){
target_value = mesh_access_parser_get_u8(&parser);
remaining_time_gdtt = mesh_access_parser_get_u8(&parser);
target_value = mesh_access_parser_get_uint8(&parser);
remaining_time_gdtt = mesh_access_parser_get_uint8(&parser);
}
uint8_t event[14] = {HCI_EVENT_MESH_META, 12, MESH_SUBEVENT_GENERIC_LEVEL};

View File

@ -158,17 +158,17 @@ static void generic_level_handle_set_target_level_message(mesh_model_t *mesh_mod
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
int16_t level_value = (int16_t)mesh_access_parser_get_u16(&parser);
int16_t level_value = (int16_t) mesh_access_parser_get_uint16(&parser);
// The TID field is a transaction identifier indicating whether the message is
// a new message or a retransmission of a previously sent message
uint8_t tid = mesh_access_parser_get_u8(&parser);
uint8_t tid = mesh_access_parser_get_uint8(&parser);
uint8_t transition_time_gdtt = 0;
uint8_t delay_time_gdtt = 0;
if (mesh_access_parser_available(&parser) == 2){
// Generic Default Transition Time format - num_steps (higher 6 bits), step_resolution (lower 2 bits)
transition_time_gdtt = mesh_access_parser_get_u8(&parser);
delay_time_gdtt = mesh_access_parser_get_u8(&parser);
transition_time_gdtt = mesh_access_parser_get_uint8(&parser);
delay_time_gdtt = mesh_access_parser_get_uint8(&parser);
}
mesh_transition_t * base_transition = generic_level_server_get_base_transition(mesh_model);
@ -197,18 +197,18 @@ static void generic_level_handle_set_delta_message(mesh_model_t *mesh_model, mes
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
int32_t delta_value = mesh_access_parser_get_u32(&parser);
int32_t delta_value = mesh_access_parser_get_uint32(&parser);
// The TID field is a transaction identifier indicating whether the message is
// a new message or a retransmission of a previously sent message
uint8_t tid = mesh_access_parser_get_u8(&parser);
uint8_t tid = mesh_access_parser_get_uint8(&parser);
uint8_t transition_time_gdtt = 0;
uint8_t delay_time_gdtt = 0;
if (mesh_access_parser_available(&parser) == 2){
// Generic Default Transition Time format - num_steps (higher 6 bits), step_resolution (lower 2 bits)
transition_time_gdtt = mesh_access_parser_get_u8(&parser);
delay_time_gdtt = mesh_access_parser_get_u8(&parser);
transition_time_gdtt = mesh_access_parser_get_uint8(&parser);
delay_time_gdtt = mesh_access_parser_get_uint8(&parser);
}
mesh_transition_t * base_transition = generic_level_server_get_base_transition(mesh_model);
@ -249,18 +249,18 @@ static void generic_level_handle_set_move_message(mesh_model_t *mesh_model, mesh
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
int32_t delta_value = (int32_t) mesh_access_parser_get_u16(&parser);
int32_t delta_value = (int32_t) mesh_access_parser_get_uint16(&parser);
// The TID field is a transaction identifier indicating whether the message is
// a new message or a retransmission of a previously sent message
uint8_t tid = mesh_access_parser_get_u8(&parser);
uint8_t tid = mesh_access_parser_get_uint8(&parser);
uint8_t transition_time_gdtt = 0;
uint8_t delay_time_gdtt = 0;
if (mesh_access_parser_available(&parser) == 2){
// Generic Default Transition Time format - num_steps (higher 6 bits), step_resolution (lower 2 bits)
transition_time_gdtt = mesh_access_parser_get_u8(&parser);
delay_time_gdtt = mesh_access_parser_get_u8(&parser);
transition_time_gdtt = mesh_access_parser_get_uint8(&parser);
delay_time_gdtt = mesh_access_parser_get_uint8(&parser);
} else {
// transition speed is delta / num steps, without num steps, and without a default transition time, we cannot do this
return;

View File

@ -146,13 +146,13 @@ static void generic_on_off_status_handler(mesh_model_t *mesh_model, mesh_pdu_t *
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint8_t present_value = mesh_access_parser_get_u8(&parser);
uint8_t present_value = mesh_access_parser_get_uint8(&parser);
uint8_t target_value = 0;
uint8_t remaining_time_gdtt = 0;
if (mesh_access_parser_available(&parser) == 2){
target_value = mesh_access_parser_get_u8(&parser);
remaining_time_gdtt = mesh_access_parser_get_u8(&parser);
target_value = mesh_access_parser_get_uint8(&parser);
remaining_time_gdtt = mesh_access_parser_get_uint8(&parser);
}
uint8_t event[12] = {HCI_EVENT_MESH_META, 10, MESH_SUBEVENT_GENERIC_ON_OFF};

View File

@ -148,7 +148,7 @@ static bool generic_on_off_handle_set_message(mesh_model_t *mesh_model, mesh_pdu
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint8_t on_off_value = mesh_access_parser_get_u8(&parser);
uint8_t on_off_value = mesh_access_parser_get_uint8(&parser);
// check for valid value
if (on_off_value > 1) return false;
@ -156,7 +156,7 @@ static bool generic_on_off_handle_set_message(mesh_model_t *mesh_model, mesh_pdu
// The TID field is a transaction identifier indicating whether the message is
// a new message or a retransmission of a previously sent message
mesh_generic_on_off_state_t * generic_on_off_server_state = (mesh_generic_on_off_state_t *)mesh_model->model_data;
uint8_t tid = mesh_access_parser_get_u8(&parser);
uint8_t tid = mesh_access_parser_get_uint8(&parser);
uint8_t transition_time_gdtt = 0;
uint8_t delay_time_gdtt = 0;
@ -171,8 +171,8 @@ static bool generic_on_off_handle_set_message(mesh_model_t *mesh_model, mesh_pdu
if (mesh_access_parser_available(&parser) == 2){
// Generic Default Transition Time format - num_steps (higher 6 bits), step_resolution (lower 2 bits)
transition_time_gdtt = mesh_access_parser_get_u8(&parser);
delay_time_gdtt = mesh_access_parser_get_u8(&parser);
transition_time_gdtt = mesh_access_parser_get_uint8(&parser);
delay_time_gdtt = mesh_access_parser_get_uint8(&parser);
}
mesh_server_transition_setup_transition_or_instantaneous_update(mesh_model, transition_time_gdtt, delay_time_gdtt);
mesh_access_state_changed(mesh_model);

View File

@ -148,7 +148,7 @@ static mesh_pdu_t * health_fault_status(mesh_model_t * mesh_model, uint32_t opco
static void health_fault_get_handler(mesh_model_t *mesh_model, mesh_pdu_t * pdu){
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint16_t company_id = mesh_access_parser_get_u16(&parser);
uint16_t company_id = mesh_access_parser_get_uint16(&parser);
mesh_upper_transport_pdu_t * transport_pdu = (mesh_upper_transport_pdu_t *) health_fault_status(mesh_model, MESH_FOUNDATION_OPERATION_HEALTH_FAULT_STATUS, company_id, true);
if (!transport_pdu) return;
@ -159,7 +159,7 @@ static void health_fault_get_handler(mesh_model_t *mesh_model, mesh_pdu_t * pdu)
static uint16_t process_message_fault_clear(mesh_model_t *mesh_model, mesh_pdu_t * pdu){
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint16_t company_id = mesh_access_parser_get_u16(&parser);
uint16_t company_id = mesh_access_parser_get_uint16(&parser);
mesh_health_fault_t * fault = mesh_health_server_fault_for_company_id(mesh_model, company_id);
if (fault != NULL){
@ -187,8 +187,8 @@ static void health_fault_clear_unacknowledged_handler(mesh_model_t *mesh_model,
static void health_fault_test_process_message(mesh_model_t *mesh_model, mesh_pdu_t * pdu, bool acknowledged){
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint8_t test_id = mesh_access_parser_get_u8(&parser);
uint16_t company_id = mesh_access_parser_get_u16(&parser);
uint8_t test_id = mesh_access_parser_get_uint8(&parser);
uint16_t company_id = mesh_access_parser_get_uint16(&parser);
uint16_t dest = mesh_pdu_src(pdu);
uint16_t netkey_index = mesh_pdu_netkey_index(pdu);
@ -249,7 +249,7 @@ static void health_period_get_handler(mesh_model_t *mesh_model, mesh_pdu_t * pdu
static void process_message_period_set(mesh_model_t *mesh_model, mesh_pdu_t * pdu){
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint8_t fast_period_divisor = mesh_access_parser_get_u8(&parser);
uint8_t fast_period_divisor = mesh_access_parser_get_uint8(&parser);
mesh_health_state_t * state = (mesh_health_state_t *) mesh_model->model_data;
state->fast_period_divisor = fast_period_divisor;
@ -281,7 +281,7 @@ static void health_attention_get_handler(mesh_model_t *mesh_model, mesh_pdu_t *
static void process_message_attention_set(mesh_model_t *mesh_model, mesh_pdu_t * pdu){
mesh_access_parser_state_t parser;
mesh_access_parser_init(&parser, (mesh_pdu_t*) pdu);
uint8_t timer_s = mesh_access_parser_get_u8(&parser);
uint8_t timer_s = mesh_access_parser_get_uint8(&parser);
mesh_attention_timer_set(timer_s);
if (mesh_model->model_packet_handler == NULL) return;