Tweaks to blinker() to make sure delayTime ADDs to offTime

This commit is contained in:
Gregg 2020-10-10 16:40:53 -05:00
parent a6d9fa86e2
commit e658d6d4eb
3 changed files with 24 additions and 11 deletions

View File

@ -228,7 +228,7 @@ void Span::commandMode(){
if(controlButton.triggered(10,3000)){
if(!controlButton.longPress()){
mode++;
if(mode==5)
if(mode==6)
mode=1;
statusLED.start(500,0.3,mode,1000);
} else {
@ -254,17 +254,21 @@ void Span::commandMode(){
break;
case 2:
processSerialCommand("R");
break;
case 3:
processSerialCommand("A");
break;
case 3:
case 4:
processSerialCommand("U");
break;
case 4:
case 5:
processSerialCommand("X");
break;
} // switch
Serial.print("*** EXITING COMMAND MODE ***\n\n");
@ -526,7 +530,6 @@ void Span::processSerialCommand(char *c){
ESP.restart(); // re-start device
}
break;
case 'X': {
@ -550,6 +553,15 @@ void Span::processSerialCommand(char *c){
}
break;
case 'R': {
Serial.print("\n*** Restarting...\n\n");
delay(1000);
statusLED.off();
ESP.restart();
}
break;
case 'F': {
nvs_erase_all(HAPClient::hapNVS);
@ -629,6 +641,7 @@ void Span::processSerialCommand(char *c){
Serial.print(" U - unpair device by deleting all Controller data\n");
Serial.print(" H - delete HomeKit Device ID & Pairing data and restart\n");
Serial.print("\n");
Serial.print(" R - restart device\n");
Serial.print(" F - factory reset and restart\n");
Serial.print(" E - delete all stored data and restart\n");
Serial.print("\n");

View File

@ -34,12 +34,12 @@
/////////////////////////////////////////////////////
// STATUS LED SETTINGS //
#define LED_WIFI_NEEDED 3000,0.05 // slow single-blink
#define LED_PAIRING_NEEDED 300,0.5,2,2550 // slow double-blink
#define LED_WIFI_NEEDED 300,0.5,1,2700 // slow single-blink
#define LED_PAIRING_NEEDED 300,0.5,2,2400 // slow double-blink
#define LED_ALERT 100 // rapid flashing
#define LED_WIFI_CONNECTING 2000 // slow flashing
#define LED_AP_STARTED 100,0.5,2,500 // rapid double-blink
#define LED_AP_CONNECTED 500,0.3,2,1000 // slow double-blink
#define LED_AP_STARTED 100,0.5,2,300 // rapid double-blink
#define LED_AP_CONNECTED 500,0.3,2,1000 // medium double-blink
/////////////////////////////////////////////////////
// Message Log Level Control Macros //

View File

@ -227,7 +227,7 @@ void Blinker::isrTimer(void *arg){
void Blinker::start(int period, float dutyCycle){
start(period, dutyCycle, 1, period-dutyCycle*period);
start(period, dutyCycle, 1, 0);
}
//////////////////////////////////////
@ -237,7 +237,7 @@ void Blinker::start(int period, float dutyCycle, int nBlinks, int delayTime){
period*=10;
onTime=dutyCycle*period;
offTime=period-onTime;
this->delayTime=delayTime*10;
this->delayTime=delayTime*10+offTime;
this->nBlinks=nBlinks;
count=nBlinks;
timer_set_counter_value(group,idx,0);