diff options
-rw-r--r-- | sensor.c | 6 |
1 files changed, 6 insertions, 0 deletions
@@ -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, "."); |