From 08f269afd4926edca9cdfd00c3d15d419e6c87a4 Mon Sep 17 00:00:00 2001 From: Trygve Laugstøl Date: Sun, 4 Jan 2015 23:43:14 +0100 Subject: o Adding an operation to set the wanted update interval. Useful for debugging to stream values and later devices where this can control how often the values are broadcasted. --- app.h | 52 ++++++++++++++++++++++++++++++++-------------------- 1 file changed, 32 insertions(+), 20 deletions(-) (limited to 'app.h') diff --git a/app.h b/app.h index e13478e..ee9c1cd 100644 --- a/app.h +++ b/app.h @@ -7,13 +7,14 @@ #define SENSOR_NAME_LEN 10 enum sm_cmd_code { - SM_CMD_GET_SENSOR_COUNT = 1, - SM_CMD_GET_VALUE = 2, - SM_CMD_SET_WARNING_VALUE = 3, - SM_CMD_GET_WARNING_VALUE = 4, - SM_CMD_SET_SENSOR_NAME = 5, - SM_CMD_GET_SENSOR_NAME = 6, - SM_CMD_FAIL = 255, + SM_CMD_GET_SENSOR_COUNT = 1, + SM_CMD_GET_VALUE = 2, + SM_CMD_SET_WARNING_VALUE = 3, + SM_CMD_GET_WARNING_VALUE = 4, + SM_CMD_SET_SENSOR_NAME = 5, + SM_CMD_GET_SENSOR_NAME = 6, + SM_CMD_SET_UPDATE_INTERVAL = 7, + SM_CMD_FAIL = 255, }; struct sm_get_sensor_count_req { @@ -65,15 +66,24 @@ struct sm_get_sensor_name_res { uint8_t name[SENSOR_NAME_LEN]; }; +struct sm_set_update_interval_req { + uint8_t sensor; + uint8_t interval_in_seconds; +}; + +struct sm_set_update_interval_res { +}; + struct sm_req { uint8_t code; union { - struct sm_get_sensor_count_req get_sensor_count; - struct sm_get_value_req get_value; - struct sm_set_warning_value_req set_warning_value; - struct sm_get_warning_value_req get_warning_value; - struct sm_set_sensor_name_req set_sensor_name; - struct sm_get_sensor_name_req get_sensor_name; + struct sm_get_sensor_count_req get_sensor_count; + struct sm_get_value_req get_value; + struct sm_set_warning_value_req set_warning_value; + struct sm_get_warning_value_req get_warning_value; + struct sm_set_sensor_name_req set_sensor_name; + struct sm_get_sensor_name_req get_sensor_name; + struct sm_set_update_interval_req set_update_interval; }; }; @@ -86,16 +96,18 @@ struct sm_res { // body union { - struct sm_get_sensor_count_res get_sensor_count; - struct sm_get_value_res get_value; - struct sm_set_warning_value_res set_warning_value; - struct sm_get_warning_value_res get_warning_value; - struct sm_set_sensor_name_res set_sensor_name; - struct sm_get_sensor_name_res get_sensor_name; + struct sm_get_sensor_count_res get_sensor_count; + struct sm_get_value_res get_value; + struct sm_set_warning_value_res set_warning_value; + struct sm_get_warning_value_res get_warning_value; + struct sm_set_sensor_name_res set_sensor_name; + struct sm_get_sensor_name_res get_sensor_name; + struct sm_set_update_interval_res set_update_interval; }; }; -void on_loop(); +void sm_on_connect(); +void sm_on_loop(); //boolean tx_soil_moisture(struct sm_res& res); void notify_soil_moisture(const struct sm_res& res, uint8_t body_len); -- cgit v1.2.3