aboutsummaryrefslogtreecommitdiff
path: root/Mussel/Mussel.h
diff options
context:
space:
mode:
authorJonas Smedegaard <dr@jones.dk>2025-04-18 01:24:05 +0200
committerJonas Smedegaard <dr@jones.dk>2025-04-18 01:24:05 +0200
commit6ca4ff06867aa5d7354615c828bd83234d827ff2 (patch)
tree6a42f307f09e05491f8e1eb9bf157e13916dad8d /Mussel/Mussel.h
parentea3988c911b467cbabe38cb9c3e6d0013b53965d (diff)
rop Mussel library; move Arduino sketches below Arduino/
Diffstat (limited to 'Mussel/Mussel.h')
-rw-r--r--Mussel/Mussel.h78
1 files changed, 0 insertions, 78 deletions
diff --git a/Mussel/Mussel.h b/Mussel/Mussel.h
deleted file mode 100644
index ba063c2..0000000
--- a/Mussel/Mussel.h
+++ /dev/null
@@ -1,78 +0,0 @@
-// SPDX-FileCopyrightText: 2025 Amal Mazrah <mazrah@ruc.dk>
-// SPDX-FileCopyrightText: 2025 Jonas Smedegaard <dr@jones.dk>
-// SPDX-FileCopyrightText: 2025 Mennatullah Hatim Kassim <stud-mennatulla@ruc.dk>
-// SPDX-FileCopyrightText: 2025 Noor Ahmad <noora@ruc.dk>
-// SPDX-FileCopyrightText: 2025 Tanishka Suwalka <tanishkas@ruc.dk>
-// SPDX-License-Identifier: GPL-3.0-or-later
-
-/// Mussel - a small library for Arduino to emulate a mussel biosensor
-///
-/// @version 0.0.2
-/// @see <https://app.radicle.xyz/nodes/seed.radicle.garden/rad:z2tFBF4gN7ziG9oXtUytVQNYe3VhQ/tree/Mussel/README.md>
-/// @see <https://moodle.ruc.dk/course/view.php?id=23504>
-
-#ifndef Mussel_h
-#define Mussel_h
-#include "Arduino.h"
-
-// seconds
-#define MUSSEL_NORMAL_PACE 50U
-#define MUSSEL_STRESS_PACE 10U
-#define MUSSEL_VOTE_TIME_AHEAD 60000U // 1 minute
-#define MUSSEL_VOTE_TIME_BEHIND 120000U // 2 minutes
-
-// milliseconds
-#define MUSSEL_DEBOUNCE_DELAY 50U
-
-// Limited size NOW!! can be transformed into infinite array
-#define STACK_SIZE 1000
-
-struct Vote {
- String id;
- unsigned long timestamp;
- int measure;
-};
-
-class Mussel {
- public:
-
- // Default constructor
- Mussel(const int attitude);
-
- // Constructor for attitudes using an input pin
- Mussel(const int attitude, const uint8_t pin);
-
- // Constructor for attitudes using an input pin and a sensor type
- Mussel(
- const int attitude,
- const uint8_t pin,
- const uint8_t type);
-
- void begin();
- String desc();
- int read();
- String debug();
- bool push(String id, unsigned long timestamp, int measure);
- void printStack();
- bool qualifyVote(Vote vote, unsigned long currentTime);
-
- private:
- int _attitude;
- int _pin;
- bool _boolState;
- byte _count;
- unsigned long _time;
-#ifdef DHT_H
- DHT mussel_dht;
-#endif
-
- // Array to store ID strings
- String idStack[STACK_SIZE];
- unsigned long timeStack[STACK_SIZE];
- int measureStack[STACK_SIZE];
-
- // Index of the top element in the stack, -1 means stack is empty
- int top = -1;
-};
-
-#endif