Hallo all,
I want to inform you for a bug that i found.
When using the time input Widget on iOS BlynkApp, if you don’t select any day, the function “isWeekdaySelected()” returns “true” in all values.
If i check at least one day, everything is working perfect, if i don’t, it thinks i have checked all the days.
I made a check with serial.print(isWeekdaySelected(x)) and all values are true.
I am using:
Arduino Due with Adafruit Fona
iOS 12.0.1
BlynkApp 2.25.0(3)
Blynk cloud server
Blynk library latest version (library update tool says so)
BLYNK_WRITE(V13)
{
TimeInputParam time1(param);
if (!time1.isWeekdaySelected(1) && !time1.isWeekdaySelected(2) && !time1.isWeekdaySelected(3) && !time1.isWeekdaySelected(4) && !time1.isWeekdaySelected(5) && !time1.isWeekdaySelected(6) && !time1.isWeekdaySelected(7))
{
Blynk.setProperty(V13, "color", "#d3435c");
}
else if (!time1.hasStartTime() && !time1.hasStopTime())
{
Blynk.setProperty(V13, "color", "#d3435c");
}
else
{
Blynk.setProperty(V13, "color", "#3dc2ff");
}
if (time1.hasStartTime())
{
time1_start_hour = time1.getStartHour() * 3600;
time1_start_minute = time1.getStartMinute() * 60;
time1_start_second = time1.getStartSecond();
}
if (time1.hasStopTime())
{
time1_stop_hour = time1.getStopHour() * 3600;
time1_stop_minute = time1.getStopMinute() * 60;
time1_stop_second = time1.getStopSecond();
}
if (time1.isWeekdaySelected(7))
{
time1_day_adjusted[0] = 1;
}
if (time1.isWeekdaySelected(1))
{
time1_day_adjusted[1] = 2;
}
if (time1.isWeekdaySelected(2))
{
time1_day_adjusted[2] = 3;
}
if (time1.isWeekdaySelected(3))
{
time1_day_adjusted[3] = 4;
}
if (time1.isWeekdaySelected(4))
{
time1_day_adjusted[4] = 5;
}
if (time1.isWeekdaySelected(5))
{
time1_day_adjusted[5] = 6;
}
if (time1.isWeekdaySelected(6))
{
time1_day_adjusted[6] = 7;
}
if (!time1.isWeekdaySelected(7))
{
time1_day_adjusted[0] = 0;
}
if (!time1.isWeekdaySelected(1))
{
time1_day_adjusted[1] = 0;
}
if (!time1.isWeekdaySelected(2))
{
time1_day_adjusted[2] = 0;
}
if (!time1.isWeekdaySelected(3))
{
time1_day_adjusted[3] = 0;
}
if (!time1.isWeekdaySelected(4))
{
time1_day_adjusted[4] = 0;
}
if (!time1.isWeekdaySelected(5))
{
time1_day_adjusted[5] = 0;
}
if (!time1.isWeekdaySelected(6))
{
time1_day_adjusted[6] = 0;
}
}
BLYNK_WRITE(V14)
{
TimeInputParam time2(param);
if (!time2.isWeekdaySelected(1) && !time2.isWeekdaySelected(2) && !time2.isWeekdaySelected(3) && !time2.isWeekdaySelected(4) && !time2.isWeekdaySelected(5) && !time2.isWeekdaySelected(6) && !time2.isWeekdaySelected(7))
{
Blynk.setProperty(V14, "color", "#d3435c");
}
else if (!time2.hasStartTime() && !time2.hasStopTime())
{
Blynk.setProperty(V14, "color", "#d3435c");
}
else
{
Blynk.setProperty(V14, "color", "#3dc2ff");
}
if (time2.hasStartTime())
{
time2_start_hour = time2.getStartHour() * 3600;
time2_start_minute = time2.getStartMinute() * 60;
time2_start_second = time2.getStartSecond();
}
if (time2.hasStopTime())
{
time2_stop_hour = time2.getStopHour() * 3600;
time2_stop_minute = time2.getStopMinute() * 60;
time2_stop_second = time2.getStopSecond();
}
if (time2.isWeekdaySelected(7))
{
time2_day_adjusted[0] = 1;
}
if (time2.isWeekdaySelected(1))
{
time2_day_adjusted[1] = 2;
}
if (time2.isWeekdaySelected(2))
{
time2_day_adjusted[2] = 3;
}
if (time2.isWeekdaySelected(3))
{
time2_day_adjusted[3] = 4;
}
if (time2.isWeekdaySelected(4))
{
time2_day_adjusted[4] = 5;
}
if (time2.isWeekdaySelected(5))
{
time2_day_adjusted[5] = 6;
}
if (time2.isWeekdaySelected(6))
{
time2_day_adjusted[6] = 7;
}
if (!time2.isWeekdaySelected(7))
{
time2_day_adjusted[0] = 0;
}
if (!time2.isWeekdaySelected(1))
{
time2_day_adjusted[1] = 0;
}
if (!time2.isWeekdaySelected(2))
{
time2_day_adjusted[2] = 0;
}
if (!time2.isWeekdaySelected(3))
{
time2_day_adjusted[3] = 0;
}
if (!time2.isWeekdaySelected(4))
{
time2_day_adjusted[4] = 0;
}
if (!time2.isWeekdaySelected(5))
{
time2_day_adjusted[5] = 0;
}
if (!time2.isWeekdaySelected(6))
{
time2_day_adjusted[6] = 0;
}
}
if (alarm_auto_button == 1)
{
if (time1_day_adjusted[weekday() - 1] == weekday() || time2_day_adjusted[weekday() - 1] == weekday())
{
auto_enable = true;
}
else
{
auto_enable = false;
}
if (auto_enable)
{
if (((hour() * 3600 + minute() * 60 + second()) == (time1_start_hour + time1_start_minute + time1_start_second)) && alarm_state == 0)
{
alarm_state_function(2);
}
if (((hour() * 3600 + minute() * 60 + second()) == (time1_stop_hour + time1_stop_minute + time1_stop_second)) && alarm_state == 2)
{
alarm_state_function(0);
}
if (((hour() * 3600 + minute() * 60 + second()) == (time2_start_hour + time2_start_minute + time2_start_second)) && alarm_state == 0)
{
alarm_state_function(2);
}
if (((hour() * 3600 + minute() * 60 + second()) == (time2_stop_hour + time2_stop_minute + time2_stop_second)) && alarm_state == 2)
{
alarm_state_function(0);
}
}
}