summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorErich Eckner <git@eckner.net>2019-09-23 10:16:42 +0200
committerErich Eckner <git@eckner.net>2019-09-23 10:16:42 +0200
commit0089efb953071dbcf36985f718afb8078b68c4e6 (patch)
tree2e9b80c538429cf42e489b3e457c3d49a54d5de6
parentd2bebfd3dccea46f0c8edefcdb450b7d240390e9 (diff)
downloadraspi-sensor-0089efb953071dbcf36985f718afb8078b68c4e6.tar.xz
sensor.c: abort after 3 unsuccessful trials
-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, ".");