summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sensor.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/sensor.c b/sensor.c
index 834c6bf..706817e 100644
--- a/sensor.c
+++ b/sensor.c
@@ -38,7 +38,13 @@ int main() {
int bit = -3;
char data[5];
memset(&data[0], 0, 5);
+ int trials = 3;
while ((bit != 40) || ((data[0]+data[1]+data[2]+data[3]-data[4]) % 255 != 0)) {
+ trials--;
+ if (trials <= 0) {
+ fprintf(stderr, "Failed to obtain valid reading within 3 trials.\n");
+ return -1;
+ }
sleep(2);
if (bit > -3)
fprintf(stderr, ".");