// // Klubhaus Doorbell — ESP32-32E-4" target // #include "DisplayDriverTFT.h" #include "board_config.h" // Include local secrets.h if it exists (board-specific credentials), // otherwise KlubhausCore/src/secrets.h provides defaults. #ifdef LOCAL_SECRETS #include "secrets.h" #else #include #endif #include DisplayDriverTFT tftDriver; DisplayManager display(&tftDriver); DoorbellLogic logic(&display); void setup() { Serial.begin(115200); delay(500); logic.begin(FW_VERSION, BOARD_NAME, wifiNetworks, wifiNetworkCount); logic.finishBoot(); } void loop() { // Read touch TouchEvent evt = display.readTouch(); // State machine tick logic.update(); // Render current screen display.render(logic.getScreenState()); // Handle tap gestures logic.handleTouch(evt); // Handle hold-to-silence gesture logic.updateHold(evt); // Serial console logic.processSerial(); // Yield to WiFi/BT stack delay(LOOP_YIELD_MS); }