#include //#include #include #include #include #include #if defined(ARDUINO_AVR_NANO) #include "pins-nano.h" #elif defined(ARDUINO_AVR_ATTINYX5) #include "pins-attiny85.h" #else #error "Pins undef for this core" #endif #include "config.h" RCSwitch mySwitch = RCSwitch(); NexusTX transmitter(PIN_SEND); //Oregon_TM transmitter(PIN_SEND); //ThermoHygroTransmitter transmitter(PIN_SEND, SENSORID, 2); DHTStable DHT; bool sensor_enabled = false; //bool output_enabled = false; bool output_state = false; unsigned long lastsend = 0; void setup() { pinMode(PIN_OUTPUT, OUTPUT); digitalWrite(PIN_OUTPUT, LOW); //delay(5000); if(LOGGER) { Serial.begin(9600); #if defined(ARDUINO_AVR_ATTINYX5) // Disable RX (free port PB1) ACSR &=~(1< (lastsend + (SEND_DELAY*1000))) || (curmillis < lastsend)) { lastsend = curmillis; mySwitch.disableReceive(); if(DHT.read22(PIN_DHT) == DHTLIB_OK) { LogS("Send "); LogS("Temperature: "); LogF(DHT.getTemperature()); LogS(" Humidity: "); LogF(DHT.getHumidity()); Logln(); transmitter.setTemperature(DHT.getTemperature()); // -49.9C...+69.9C transmitter.setHumidity(lround(DHT.getHumidity())); // 2...98% transmitter.SendPacket(); //transmitter.sendTempHumi(lround(DHT.getTemperature()*10), lround(DHT.getHumidity())); } else { LogS("DHT Error"); Logln(); } mySwitch.enableReceive(0); } } }