rc-gateway/devices/movement_sensor/movement_sensor.ino
Nicu Hodos 89da9a80e8 re-organize:
- move code for all devices in dedicated folder
- move code for gateway in the root folder
2025-09-20 10:00:42 +02:00

33 lines
560 B
C++

#include <Tiny.h>
#include <SoftwareSerial_Tiny.h>
#include <TinyPower.h>
// Pins
#define MOVEMENT_PIN PCINT2
#define SENDER 4
ContactSensor sensor = ContactSensor(MOVEMENT_SENSOR, SENDER);
volatile bool shouldSend = false;
void setup() {
pinMode(MOVEMENT_PIN, INPUT_PULLUP);
sensor.setup();
TinyPower::setup();
PCMSK |= (1 << MOVEMENT_PIN);
}
void loop() {
if (shouldSend) {
shouldSend = false;
int currentState = digitalRead(MOVEMENT_PIN);
sensor.sendState(!currentState);
}
TinyPower::sleep();
}
ISR(PCINT0_vect) {
shouldSend = true;
}