Skip to content

Commit

Permalink
updated external button to suit acebutton
Browse files Browse the repository at this point in the history
  • Loading branch information
andysheen committed Sep 15, 2020
1 parent 3667d08 commit f705bdb
Show file tree
Hide file tree
Showing 2 changed files with 42 additions and 47 deletions.
2 changes: 1 addition & 1 deletion ESP32-SOCKETIO.ino
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
#define LED_BUILTIN 2
#define LED_BUILTIN_ON HIGH

int BUTTON_BUILTIN = 0;
int BUTTON_BUILTIN = 0;

bool disconnected = false;

Expand Down
87 changes: 41 additions & 46 deletions utility.ino
Original file line number Diff line number Diff line change
Expand Up @@ -6,14 +6,9 @@ void setupPins() {

ButtonConfig* buttonConfigBuiltIn = buttonBuiltIn.getButtonConfig();
buttonConfigBuiltIn->setEventHandler(handleButtonEvent);
buttonConfigBuiltIn->setFeature(ButtonConfig::kFeatureClick);
buttonConfigBuiltIn->setFeature(ButtonConfig::kFeatureLongPress);
buttonConfigBuiltIn->setLongPressDelay(longButtonPressDelay);

ButtonConfig* buttonExternalConfig = buttonExternal.getButtonConfig();
buttonExternalConfig->setEventHandler(handleButtonEventExternal);
buttonExternalConfig->setFeature(ButtonConfig::kFeatureClick);
buttonExternalConfig->setFeature(ButtonConfig::kFeatureLongPress);
buttonExternalConfig->setLongPressDelay(LONG_TOUCH);
buttonConfigBuiltIn->setLongPressDelay(LONG_TOUCH);

touchConfig.setFeature(ButtonConfig::kFeatureClick);
touchConfig.setFeature(ButtonConfig::kFeatureLongPress);
Expand Down Expand Up @@ -55,48 +50,48 @@ void blinkOnConnect() {

// button functions
void handleButtonEvent(AceButton* button, uint8_t eventType, uint8_t buttonState) {
Serial.println(button->getId());

switch (eventType) {
case AceButton::kEventPressed:
break;
case AceButton::kEventReleased:
if (currentSetupStatus == setup_finished) socketIO_sendButtonPress();
break;
case AceButton::kEventLongPressed:
Serial.print("ID IS: ");
Serial.println(button->getPin());
switch (button->getPin()) {
case 0:
switch (eventType) {
case AceButton::kEventPressed:
break;
case AceButton::kEventReleased:
if (currentSetupStatus == setup_finished) socketIO_sendButtonPress();
break;
case AceButton::kEventLongPressed:
#ifdef DEV
factoryReset();
factoryReset();
#endif
break;
case AceButton::kEventRepeatPressed:
break;
}
break;
case AceButton::kEventRepeatPressed:
break;
}
}

// button functions
void handleButtonEventExternal(AceButton* button, uint8_t eventType, uint8_t buttonState) {
Serial.println(button->getId());

switch (eventType) {
case AceButton::kEventPressed:
Serial.println("TOUCH: pressed");
break;
case AceButton::kEventLongPressed:
Serial.println("TOUCH: Long pressed");
isSelectingColour = true;
// TODO also hold the LED at the colour for a little bit
break;
case AceButton::kEventReleased:
Serial.println("TOUCH: released");
isSelectingColour = false;
ledChanged[USERLED] = true;
fadeRGB(USERLED);
break;
case AceButton::kEventClicked:
Serial.println("TOUCH: clicked");
ledChanged[USERLED] = true;
fadeRGB(USERLED);
socketIO_sendColour();
case EXTERNAL_BUTTON:
switch (eventType) {
case AceButton::kEventPressed:
Serial.println("TOUCH: pressed");
break;
case AceButton::kEventLongPressed:
Serial.println("TOUCH: Long pressed");
isSelectingColour = true;
// TODO also hold the LED at the colour for a little bit
break;
case AceButton::kEventReleased:
Serial.println("TOUCH: released");
isSelectingColour = false;
ledChanged[USERLED] = true;
fadeRGB(USERLED);
break;
case AceButton::kEventClicked:
Serial.println("TOUCH: clicked");
ledChanged[USERLED] = true;
fadeRGB(USERLED);
socketIO_sendColour();
break;
}
break;
}
}
Expand Down

0 comments on commit f705bdb

Please sign in to comment.