Dim in midroom

This commit is contained in:
lexa
2020-11-20 15:37:47 +03:00
parent 32897f8115
commit f0cc8e9a2d
2 changed files with 14 additions and 12 deletions

View File

@@ -49,8 +49,8 @@ void loop() {
unsigned long t = millis(); unsigned long t = millis();
temp = myAHT10.readTemperature(AHT10_FORCE_READ_DATA); temp = myAHT10.readTemperature(AHT10_FORCE_READ_DATA);
hum = myAHT10.readHumidity(AHT10_USE_READ_DATA); hum = myAHT10.readHumidity(AHT10_USE_READ_DATA);
Serial.print(F("T: ")); Serial.print(temp);// Serial.println(F(" +-0.3C")); Serial.print(F("T: ")); Serial.println(temp);// Serial.println(F(" +-0.3C"));
Serial.print(F("H: ")); Serial.print(hum);// Serial.println(F(" +-2%")); Serial.print(F("H: ")); Serial.println(hum);// Serial.println(F(" +-2%"));
if (temp < 200){ if (temp < 200){
sendData(msgTemp, temp, 1); sendData(msgTemp, temp, 1);
sendData(msgHum, hum, 1); sendData(msgHum, hum, 1);
@@ -59,8 +59,8 @@ void loop() {
} }
sensorValue = analogRead(BATTERY_SENSE_PIN); sensorValue = analogRead(BATTERY_SENSE_PIN);
v = sensorValue * 0.004659498; v = sensorValue * 0.004659498;
batteryPcnt = ((v-3.0) * 100) / 1.2; //batteryPcnt = ((v-3.0) * 100) / 1.2;
sendBatteryLevel(batteryPcnt); //sendBatteryLevel(batteryPcnt);
sendData(msgVolts, v, 2); sendData(msgVolts, v, 2);
//send(msgVolts.set(v, 2)); //send(msgVolts.set(v, 2));
Serial.println(F("Tm run")); Serial.println(millis() - t); Serial.println(F("Tm run")); Serial.println(millis() - t);
@@ -84,7 +84,7 @@ void sendData(MyMessage msg, bool status)
while(send_data == false){ while(send_data == false){
count++; count++;
send_data = send(msg.set(status)); send_data = send(msg.set(status));
wait(1000, C_SET, V_STATUS); wait(100, C_SET, V_STATUS);
if ((count == 3 )&&(send_data == 0)){ // Если сделано 3 попытки и нет подтверждения отправки if ((count == 3 )&&(send_data == 0)){ // Если сделано 3 попытки и нет подтверждения отправки
count = 0; // Обнуляем счётчик count = 0; // Обнуляем счётчик
send_data = 1; // Выходим из цикла send_data = 1; // Выходим из цикла
@@ -98,7 +98,7 @@ void sendData(MyMessage msg, float status, uint8_t decm)
while(send_data == false){ while(send_data == false){
count++; count++;
send_data = send(msg.set(status, decm)); send_data = send(msg.set(status, decm));
wait(1000, C_SET, V_STATUS); wait(100, C_SET, V_STATUS);
if ((count == 3 )&&(send_data == 0)){ // Если сделано 3 попытки и нет подтверждения отправки if ((count == 3 )&&(send_data == 0)){ // Если сделано 3 попытки и нет подтверждения отправки
count = 0; // Обнуляем счётчик count = 0; // Обнуляем счётчик
send_data = 1; // Выходим из цикла send_data = 1; // Выходим из цикла
@@ -112,7 +112,7 @@ void sendData(MyMessage msg, int status)
while(send_data == false){ while(send_data == false){
count++; count++;
send_data = send(msg.set(status)); send_data = send(msg.set(status));
wait(1000, C_SET, V_STATUS); wait(100, C_SET, V_STATUS);
if ((count == 3 )&&(send_data == 0)){ // Если сделано 3 попытки и нет подтверждения отправки if ((count == 3 )&&(send_data == 0)){ // Если сделано 3 попытки и нет подтверждения отправки
count = 0; // Обнуляем счётчик count = 0; // Обнуляем счётчик
send_data = 1; // Выходим из цикла send_data = 1; // Выходим из цикла
@@ -127,7 +127,7 @@ void sendData(MyMessage msg, uint32_t status)
while(send_data == false){ while(send_data == false){
count++; count++;
send_data = send(msg.set(status)); send_data = send(msg.set(status));
wait(1000, C_SET, V_STATUS); wait(100, C_SET, V_STATUS);
if ((count == 3 )&&(send_data == 0)){ // Если сделано 3 попытки и нет подтверждения отправки if ((count == 3 )&&(send_data == 0)){ // Если сделано 3 попытки и нет подтверждения отправки
count = 0; // Обнуляем счётчик count = 0; // Обнуляем счётчик
send_data = 1; // Выходим из цикла send_data = 1; // Выходим из цикла

View File

@@ -15,12 +15,12 @@ bool lightOn = false;
void before() void before()
{ {
pinMode(RELAY_PIN, OUTPUT);
lightLevel = loadState(0);
} }
void setup() void setup()
{ {
pinMode(RELAY_PIN, OUTPUT);
lightLevel = loadState(0);
} }
void presentation() void presentation()
@@ -52,8 +52,10 @@ void receive(const MyMessage &message)
Serial.println(message.getBool()); Serial.println(message.getBool());
break; break;
case V_PERCENTAGE: case V_PERCENTAGE:
saveState(0, message.getUInt()); uint16_t lev = message.getUInt();
lightLevel = message.getUInt(); if(lev > 100) lev = 100;
saveState(0, int(lev * 2.55));
lightLevel = int(lev * 2.55);
if(lightOn) analogWrite(RELAY_PIN, lightLevel); if(lightOn) analogWrite(RELAY_PIN, lightLevel);
Serial.print("Incoming change for dimmer:"); Serial.print("Incoming change for dimmer:");
Serial.print(message.getSensor()); Serial.print(message.getSensor());