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.triggered(10,3000)){
if(!controlButton.longPress()){ if(!controlButton.longPress()){
mode++; mode++;
if(mode==5) if(mode==6)
mode=1; mode=1;
statusLED.start(500,0.3,mode,1000); statusLED.start(500,0.3,mode,1000);
} else { } else {
@ -254,14 +254,18 @@ void Span::commandMode(){
break; break;
case 2: case 2:
processSerialCommand("A"); processSerialCommand("R");
break; break;
case 3: case 3:
processSerialCommand("U"); processSerialCommand("A");
break; break;
case 4: case 4:
processSerialCommand("U");
break;
case 5:
processSerialCommand("X"); processSerialCommand("X");
break; break;
@ -527,7 +531,6 @@ void Span::processSerialCommand(char *c){
} }
break; break;
case 'X': { case 'X': {
nvs_erase_all(HAPClient::wifiNVS); nvs_erase_all(HAPClient::wifiNVS);
@ -550,6 +553,15 @@ void Span::processSerialCommand(char *c){
} }
break; break;
case 'R': {
Serial.print("\n*** Restarting...\n\n");
delay(1000);
statusLED.off();
ESP.restart();
}
break;
case 'F': { case 'F': {
nvs_erase_all(HAPClient::hapNVS); 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(" U - unpair device by deleting all Controller data\n");
Serial.print(" H - delete HomeKit Device ID & Pairing data and restart\n"); Serial.print(" H - delete HomeKit Device ID & Pairing data and restart\n");
Serial.print("\n"); Serial.print("\n");
Serial.print(" R - restart device\n");
Serial.print(" F - factory reset and restart\n"); Serial.print(" F - factory reset and restart\n");
Serial.print(" E - delete all stored data and restart\n"); Serial.print(" E - delete all stored data and restart\n");
Serial.print("\n"); Serial.print("\n");

View File

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

View File

@ -227,7 +227,7 @@ void Blinker::isrTimer(void *arg){
void Blinker::start(int period, float dutyCycle){ 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; period*=10;
onTime=dutyCycle*period; onTime=dutyCycle*period;
offTime=period-onTime; offTime=period-onTime;
this->delayTime=delayTime*10; this->delayTime=delayTime*10+offTime;
this->nBlinks=nBlinks; this->nBlinks=nBlinks;
count=nBlinks; count=nBlinks;
timer_set_counter_value(group,idx,0); timer_set_counter_value(group,idx,0);