aboutsummaryrefslogtreecommitdiff
path: root/app.cpp
diff options
context:
space:
mode:
authorTrygve Laugstøl <trygvis@inamo.no>2015-07-23 15:37:39 +0200
committerTrygve Laugstøl <trygvis@inamo.no>2015-07-23 15:37:39 +0200
commitdea9cb49271631d4def70d21db42a85d1d58f269 (patch)
tree77f8b281190818d0bde23c2535d845abe6d98258 /app.cpp
parent678dfb7e93f1d613fb9a513d60a685d5e3c1c3b3 (diff)
downloadtrygvisio_soil_moisture-dea9cb49271631d4def70d21db42a85d1d58f269.tar.gz
trygvisio_soil_moisture-dea9cb49271631d4def70d21db42a85d1d58f269.tar.bz2
trygvisio_soil_moisture-dea9cb49271631d4def70d21db42a85d1d58f269.tar.xz
trygvisio_soil_moisture-dea9cb49271631d4def70d21db42a85d1d58f269.zip
o Fixing a bug where the reponse code wasn't properly set.
Diffstat (limited to 'app.cpp')
-rw-r--r--app.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/app.cpp b/app.cpp
index cadcc30..d4f880d 100644
--- a/app.cpp
+++ b/app.cpp
@@ -134,7 +134,7 @@ void sm_loop() {
}
}
-#ifdef SM_DEBUG
+#ifdef SM_DEBUG == 1
static void write_name(uint8_t const* name, uint8_t len) {
for(int i = 0; i < len; i++) {
@@ -271,6 +271,7 @@ void on_soil_moisture_ctrl(uint8_t *data, uint8_t len) {
switch(req->code) {
case SM_CMD_GET_SENSOR_COUNT:
body_len = sizeof(sm_get_sensor_count_res);
+ res.code = req->code;
res.get_sensor_count.count = SENSOR_COUNT;
break;
@@ -279,6 +280,7 @@ void on_soil_moisture_ctrl(uint8_t *data, uint8_t len) {
sensor = req->get_value.sensor;
if (sensor < SENSOR_COUNT) {
+ res.code = req->code;
// TODO: update the sensor's value
res.get_value.value = sensors[sensor].value;
} else {
@@ -291,6 +293,7 @@ void on_soil_moisture_ctrl(uint8_t *data, uint8_t len) {
sensor = req->set_warning_value.sensor;
if (sensor < SENSOR_COUNT) {
+ res.code = req->code;
sensors[sensor].warning_value = req->set_warning_value.warning_value;
} else {
res.code = SM_CMD_FAIL;
@@ -302,6 +305,7 @@ void on_soil_moisture_ctrl(uint8_t *data, uint8_t len) {
sensor = req->get_warning_value.sensor;
if (sensor < SENSOR_COUNT) {
+ res.code = req->code;
res.get_warning_value.warning_value = sensors[sensor].warning_value;
} else {
res.code = SM_CMD_FAIL;
@@ -313,6 +317,7 @@ void on_soil_moisture_ctrl(uint8_t *data, uint8_t len) {
sensor = req->set_sensor_name.sensor;
if (sensor < SENSOR_COUNT) {
+ res.code = req->code;
sensors[sensor].name_length = min(req->set_sensor_name.length, SENSOR_NAME_LEN);
memcpy(sensors[sensor].name, req->set_sensor_name.name, sensors[sensor].name_length);
} else {
@@ -325,6 +330,7 @@ void on_soil_moisture_ctrl(uint8_t *data, uint8_t len) {
sensor = req->get_sensor_name.sensor;
if (sensor < SENSOR_COUNT) {
+ res.code = req->code;
res.get_sensor_name.length = sensors[sensor].name_length;
memcpy(res.get_sensor_name.name, sensors[sensor].name, SENSOR_NAME_LEN);
} else {