diff --git a/components/cpputils b/components/cpputils index 67b5294..19f2704 160000 --- a/components/cpputils +++ b/components/cpputils @@ -1 +1 @@ -Subproject commit 67b5294763fd0e2fdce8862ce18948795a125858 +Subproject commit 19f270489cd63f951f162b9da0b0e894df12e5cb diff --git a/components/esp-gui-lib b/components/esp-gui-lib index 1fed239..d096002 160000 --- a/components/esp-gui-lib +++ b/components/esp-gui-lib @@ -1 +1 @@ -Subproject commit 1fed239f6b993b035a35806a940748f1dd750b3c +Subproject commit d0960025a264cd59846eded15595a7d42ff3ab9a diff --git a/components/espasyncota b/components/espasyncota index 67d7c6d..7090903 160000 --- a/components/espasyncota +++ b/components/espasyncota @@ -1 +1 @@ -Subproject commit 67d7c6d72124cd00b0bf3cea81fbd53eb0338730 +Subproject commit 7090903ce331f3c752f2a9f49ef0f834eb07d59d diff --git a/components/espchrono b/components/espchrono index 9c57959..272e998 160000 --- a/components/espchrono +++ b/components/espchrono @@ -1 +1 @@ -Subproject commit 9c57959705a1c44f3cf137f9193040774adecd34 +Subproject commit 272e99832bfaafa5ee9dde8a2ba88eec7c400df9 diff --git a/components/espcpputils b/components/espcpputils index 0759442..ed0c502 160000 --- a/components/espcpputils +++ b/components/espcpputils @@ -1 +1 @@ -Subproject commit 07594420e959e22fadab1d9a3ed7aa41c4262ab8 +Subproject commit ed0c50224905dfb3addeb3cec9e6a5e2e3d2d510 diff --git a/components/espwifistack b/components/espwifistack index c17062e..118b031 160000 --- a/components/espwifistack +++ b/components/espwifistack @@ -1 +1 @@ -Subproject commit c17062e1e8761b65f636c5d92850766c31091780 +Subproject commit 118b03123e39ba3c6ce9eb30e3a6313c3a6fd0c7 diff --git a/esp-idf b/esp-idf index 5b7d79a..3ad5518 160000 --- a/esp-idf +++ b/esp-idf @@ -1 +1 @@ -Subproject commit 5b7d79a0a17526bc29476cccdca185c170a82e90 +Subproject commit 3ad551898dcbfe0bb27b4ee975349328912f2829 diff --git a/main/CMakeLists.txt b/main/CMakeLists.txt index 7845ddb..e420d1d 100644 --- a/main/CMakeLists.txt +++ b/main/CMakeLists.txt @@ -103,7 +103,7 @@ set(headers displays/menus/featureflagsmenu.h displays/menus/feedbackdebugmenu.h displays/menus/gametrakmodesettingsmenu.h - displays/menus/garagenmenu.h + displays/menus/garagemenu.h displays/menus/graphsmenu.h displays/menus/greenpassmenu.h displays/menus/handbremssettingsmenu.h @@ -340,7 +340,7 @@ set(sources displays/menus/featureflagsmenu.cpp displays/menus/feedbackdebugmenu.cpp displays/menus/gametrakmodesettingsmenu.cpp - displays/menus/garagenmenu.cpp + displays/menus/garagemenu.cpp displays/menus/graphsmenu.cpp displays/menus/greenpassmenu.cpp displays/menus/handbremssettingsmenu.cpp diff --git a/main/actions/modesettingsaction.h b/main/actions/modesettingsaction.h index 52a088b..3d27834 100644 --- a/main/actions/modesettingsaction.h +++ b/main/actions/modesettingsaction.h @@ -30,24 +30,23 @@ public: void ModeSettingsAction::triggered() { - if ( - currentMode == &modes::defaultMode - #ifdef FEATURE_JOYSTICK + if (currentMode == &modes::defaultMode +#ifdef FEATURE_JOYSTICK || currentMode == &modes::wheelchairMode - #endif +#endif ) - switchScreen(); + pushScreen(); else if (currentMode == &modes::tempomatMode) - switchScreen(); + pushScreen(); else if (currentMode == &modes::larsmMode) - switchScreen(); + pushScreen(); else if (currentMode == &modes::mickMode) - switchScreen(); + pushScreen(); else if (currentMode == &modes::motortestMode) - switchScreen(); + pushScreen(); #ifdef FEATURE_GAMETRAK else if (currentMode == &modes::gametrakMode) - switchScreen(); + pushScreen(); #endif else { diff --git a/main/actions/qraction.h b/main/actions/qraction.h index 64b72c7..0551fcf 100644 --- a/main/actions/qraction.h +++ b/main/actions/qraction.h @@ -27,7 +27,7 @@ public: void triggered() override { - espgui::switchScreen>(m_msg); + espgui::pushScreen>(m_msg); } private: std::string m_msg; @@ -42,7 +42,7 @@ public: void triggered() override { - espgui::switchScreen>(std::move(m_nvskey)); + espgui::pushScreen>(std::move(m_nvskey)); } private: std::string m_nvskey; diff --git a/main/displays/batterygraphdisplay.cpp b/main/displays/batterygraphdisplay.cpp index 8c9e624..d2f27f9 100644 --- a/main/displays/batterygraphdisplay.cpp +++ b/main/displays/batterygraphdisplay.cpp @@ -67,7 +67,7 @@ void BatteryGraphDisplay::buttonPressed(espgui::Button button) using espgui::Button; case Button::Left: case Button::Right: - espgui::switchScreen(); + espgui::popScreen(); break; default:; } diff --git a/main/displays/bmsdisplay.cpp b/main/displays/bmsdisplay.cpp index b462f12..0be70c2 100644 --- a/main/displays/bmsdisplay.cpp +++ b/main/displays/bmsdisplay.cpp @@ -100,9 +100,11 @@ void BmsDisplay::buttonPressed(espgui::Button button) switch (button) { - case Button::Right: switchScreen(); break; + using espgui::Button; + case Button::Right: pushScreen(); break; case Button::Up: switchScreen(); break; - case Button::Down: switchScreen(); + case Button::Down: switchScreen(); break; + default:; } } #endif diff --git a/main/displays/bmsdisplay.h b/main/displays/bmsdisplay.h index 2e877ec..fd2243f 100644 --- a/main/displays/bmsdisplay.h +++ b/main/displays/bmsdisplay.h @@ -3,7 +3,6 @@ #if defined(FEATURE_BLUETOOTH) && defined(FEATURE_BMS) // 3rdparty lib includes #include -#include #include #include diff --git a/main/displays/bobbypopupdisplay.h b/main/displays/bobbypopupdisplay.h index b680df3..0220fce 100644 --- a/main/displays/bobbypopupdisplay.h +++ b/main/displays/bobbypopupdisplay.h @@ -1,11 +1,11 @@ #pragma once // 3rdparty lib includes -#include +#include -class BobbyPopupDisplay : public espgui::PopupDisplay +class BobbyPopupDisplay : public espgui::MessagePopupDisplay { - using Base = espgui::PopupDisplay; + using Base = espgui::MessagePopupDisplay; public: using Base::Base; diff --git a/main/displays/buttoncalibratedisplay.cpp b/main/displays/buttoncalibratedisplay.cpp index 676a4bf..064cd7a 100644 --- a/main/displays/buttoncalibratedisplay.cpp +++ b/main/displays/buttoncalibratedisplay.cpp @@ -75,7 +75,7 @@ void ButtonCalibrateDisplay::update() return; } - espgui::switchScreen(); + espgui::popScreen(); } } diff --git a/main/displays/calibratevoltagedisplay.cpp b/main/displays/calibratevoltagedisplay.cpp index 5cb8129..7f0bf3d 100644 --- a/main/displays/calibratevoltagedisplay.cpp +++ b/main/displays/calibratevoltagedisplay.cpp @@ -4,7 +4,7 @@ #include #include #include -#include +#include #include #include @@ -122,7 +122,7 @@ CalibrateVoltageDisplay::CalibrateVoltageDisplay() constructMenuItem, Save30VCalibrationAction>>(); constructMenuItem, Save50VCalibrationAction>>(); constructMenuItem, BobbyCheckbox, BatteryApplyCalibrationAccessor>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); constructMenuItem>(); @@ -141,5 +141,5 @@ std::string CalibrateVoltageDisplay::text() const void CalibrateVoltageDisplay::back() { - espgui::switchScreen(); + espgui::popScreen(); } diff --git a/main/displays/confiscationdisplay.cpp b/main/displays/confiscationdisplay.cpp index 655a1aa..461ee54 100644 --- a/main/displays/confiscationdisplay.cpp +++ b/main/displays/confiscationdisplay.cpp @@ -3,13 +3,11 @@ // 3rdparty lib includes #include #include -#include #include #include // local includes #include "globals.h" -#include "displays/menus/mainmenu.h" #include "icons/shortcircuit.h" using namespace std::chrono_literals; @@ -106,10 +104,8 @@ void ConfiscationDisplay::buttonPressed(espgui::Button button) switch (button) { - using espgui::Button; - case Button::Left: - espgui::switchScreen(); - break; + using espgui::Button; + case Button::Left: espgui::popScreen(); break; default:; } } diff --git a/main/displays/gameoflifedisplay.cpp b/main/displays/gameoflifedisplay.cpp index d3ea5c5..e50c117 100644 --- a/main/displays/gameoflifedisplay.cpp +++ b/main/displays/gameoflifedisplay.cpp @@ -6,9 +6,6 @@ #include #include -// local includes -#include "displays/menus/demosmenu.h" - void GameOfLifeDisplay::start() { Base::start(); @@ -61,8 +58,7 @@ void GameOfLifeDisplay::buttonPressed(espgui::Button button) { using espgui::Button; case Button::Left: - case Button::Right: - espgui::switchScreen(); + espgui::popScreen(); break; default:; } diff --git a/main/displays/gameoflifedisplay.h b/main/displays/gameoflifedisplay.h index d2844f7..10b8d14 100644 --- a/main/displays/gameoflifedisplay.h +++ b/main/displays/gameoflifedisplay.h @@ -17,7 +17,7 @@ public: void redraw() override; void stop() override; - void buttonPressed(espgui::Button button); + void buttonPressed(espgui::Button button) override; private: diff --git a/main/displays/joystickdebugdisplay.cpp b/main/displays/joystickdebugdisplay.cpp index c728447..28868df 100644 --- a/main/displays/joystickdebugdisplay.cpp +++ b/main/displays/joystickdebugdisplay.cpp @@ -83,7 +83,7 @@ void JoystickDebugDisplay::buttonPressed(espgui::Button button) tft.fillScreen(TFT_BLACK); break; case Button::Left: - espgui::switchScreen(); + espgui::popScreen(); break; default:; } diff --git a/main/displays/joystickdebugdisplay.h b/main/displays/joystickdebugdisplay.h index 15b5f64..dd1ff07 100644 --- a/main/displays/joystickdebugdisplay.h +++ b/main/displays/joystickdebugdisplay.h @@ -3,9 +3,6 @@ // system libs #include -// 3rdparty lib includes -#include - // local includes #include "bobbydisplaywithtitle.h" #include "modeinterface.h" diff --git a/main/displays/ledstripcolorsdisplay.cpp b/main/displays/ledstripcolorsdisplay.cpp index 51a2da0..d2e6d81 100644 --- a/main/displays/ledstripcolorsdisplay.cpp +++ b/main/displays/ledstripcolorsdisplay.cpp @@ -7,19 +7,16 @@ #include #include #include -#include #include #include #include +#include // local includes -#include "menudisplay.h" #include "utils.h" #include "icons/back.h" #include "icons/bobbycar.h" -#include "actions/dummyaction.h" #include "globals.h" -#include "displays/menus/ledstripmenu.h" namespace { constexpr char TEXT_LEDSTRIPCOLORMENU[] = "Customize Ledstrip"; @@ -101,7 +98,7 @@ void LedstripColorsDisplay::buttonPressed(espgui::Button button) case Button::Left: if(!state_select_color) { - espgui::switchScreen(); + espgui::popScreen(); } else { diff --git a/main/displays/lockscreen.cpp b/main/displays/lockscreen.cpp index 618286f..ace5a6b 100644 --- a/main/displays/lockscreen.cpp +++ b/main/displays/lockscreen.cpp @@ -10,9 +10,9 @@ // local includes #include "globals.h" #include "utils.h" -#include "displays/menus/mainmenu.h" #include "displays/potiscalibratedisplay.h" #include "bobbybuttons.h" +#include "displays/menus/mainmenu.h" namespace { bool isValid1stPin(std::array enteredPin) @@ -109,7 +109,7 @@ void Lockscreen::redraw() if (!gas || !brems || *gas > 200.f || *brems > 200.f) espgui::switchScreen(true); else - espgui::switchScreen(); + espgui::popScreen(); #ifdef LOCKSCREEN_PLUGIN #include LOCKSCREEN_PLUGIN LOCKSCREEN_PLUGIN_FIXES_1 diff --git a/main/displays/menus/aboutmenu.cpp b/main/displays/menus/aboutmenu.cpp index 02a5812..e42e905 100644 --- a/main/displays/menus/aboutmenu.cpp +++ b/main/displays/menus/aboutmenu.cpp @@ -3,7 +3,7 @@ // local includes #include "utils.h" #include "actions/dummyaction.h" -#include "actions/switchscreenaction.h" +#include "actions/popscreenaction.h" #include "icons/back.h" #include "esptexthelpers.h" #include "displays/menus/settingsmenu.h" @@ -56,7 +56,7 @@ AboutMenu::AboutMenu() constructMenuItem, DisabledColor, DummyAction>>(); constructMenuItem, DisabledColor, DummyAction>>(); constructMenuItem, DisabledColor, DummyAction>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); } std::string AboutMenu::text() const @@ -66,5 +66,5 @@ std::string AboutMenu::text() const void AboutMenu::back() { - espgui::switchScreen(); + espgui::popScreen(); } diff --git a/main/displays/menus/batterydebugmenu.cpp b/main/displays/menus/batterydebugmenu.cpp index c7f885b..92caeb3 100644 --- a/main/displays/menus/batterydebugmenu.cpp +++ b/main/displays/menus/batterydebugmenu.cpp @@ -4,11 +4,10 @@ #include #include #include -#include +#include #include // local includes -#include "debugmenu.h" #include "accessors/settingsaccessors.h" #include "utils.h" #include "icons/settings.h" @@ -82,7 +81,7 @@ BatteryDebugMenu::BatteryDebugMenu() constructMenuItem>(); constructMenuItem>(); constructMenuItem>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); } std::string BatteryDebugMenu::text() const @@ -92,5 +91,5 @@ std::string BatteryDebugMenu::text() const void BatteryDebugMenu::back() { - espgui::switchScreen(); + espgui::popScreen(); } diff --git a/main/displays/menus/batterymenu.cpp b/main/displays/menus/batterymenu.cpp index 022fb33..08bdb2d 100644 --- a/main/displays/menus/batterymenu.cpp +++ b/main/displays/menus/batterymenu.cpp @@ -4,7 +4,8 @@ #include #include #include -#include +#include +#include #include #include #include @@ -12,6 +13,11 @@ #include // Local includes +#include "utils.h" +#include "icons/settings.h" +#include "battery.h" +#include "displays/bobbychangevaluedisplay.h" +#include "displays/calibratevoltagedisplay.h" #include "accessors/settingsaccessors.h" #include "battery.h" #include "displays/batterygraphdisplay.h" @@ -50,24 +56,24 @@ using BatteryCellSeriesChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, BatterySeriesCellsAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using BatteryCellParallelChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, BatteryParallelCellsAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using BatteryWHperKMChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, BatteryWHperKMAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; } // namespace @@ -77,15 +83,15 @@ BatteryMenu::BatteryMenu() { constructMenuItem>(); constructMenuItem>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem>(&configs.battery.cellType); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&bobbyicons::graph>>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem>(&configs.battery.cellType); + constructMenuItem, PushScreenAction, StaticMenuItemIcon<&bobbyicons::graph>>>(); constructMenuItem>(); constructMenuItem>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&bobbyicons::settings>>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PushScreenAction, StaticMenuItemIcon<&bobbyicons::settings>>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); } std::string BatteryMenu::text() const @@ -129,5 +135,5 @@ void BatteryMenu::redraw() void BatteryMenu::back() { - espgui::switchScreen(); + espgui::popScreen(); } diff --git a/main/displays/menus/blesettingsmenu.cpp b/main/displays/menus/blesettingsmenu.cpp index f42d95c..19480a6 100644 --- a/main/displays/menus/blesettingsmenu.cpp +++ b/main/displays/menus/blesettingsmenu.cpp @@ -2,7 +2,8 @@ // 3rdparty lib includes #include -#include +#include +#include #include #include #include @@ -26,8 +27,8 @@ using ApSsidChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, BluetoothNameAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; } // namespace @@ -37,8 +38,8 @@ BleSettingsMenu::BleSettingsMenu() constructMenuItem, BobbyCheckbox, BleEnabledAccessor>>(); constructMenuItem>(); constructMenuItem>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); } std::string BleSettingsMenu::text() const @@ -48,5 +49,5 @@ std::string BleSettingsMenu::text() const void BleSettingsMenu::back() { - espgui::switchScreen(); + espgui::popScreen(); } diff --git a/main/displays/menus/bmsmenu.cpp b/main/displays/menus/bmsmenu.cpp index 24ad1ba..d0c16a1 100644 --- a/main/displays/menus/bmsmenu.cpp +++ b/main/displays/menus/bmsmenu.cpp @@ -10,10 +10,9 @@ #include "actions/bmsturnoffchargeaction.h" #include "actions/bmsturnondischargeaction.h" #include "actions/bmsturnoffdischargeaction.h" -#include "actions/switchscreenaction.h" +#include "actions/popscreenaction.h" #include "bluetoothtexthelpers.h" #include "icons/back.h" -#include "displays/menus/mainmenu.h" using namespace espgui; using namespace bluetoothtexthelpers; @@ -27,11 +26,11 @@ BmsMenu::BmsMenu() constructMenuItem, BmsTurnOffChargeAction>>(); constructMenuItem, BmsTurnOnDischargeAction>>(); constructMenuItem, BmsTurnOffDischargeAction>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); } void BmsMenu::back() { - switchSreen(); + popSreen(); } #endif diff --git a/main/displays/menus/boardcomputerhardwaresettingsmenu.cpp b/main/displays/menus/boardcomputerhardwaresettingsmenu.cpp index c5a1f34..17008ec 100644 --- a/main/displays/menus/boardcomputerhardwaresettingsmenu.cpp +++ b/main/displays/menus/boardcomputerhardwaresettingsmenu.cpp @@ -4,7 +4,8 @@ #include #include #include -#include +#include +#include #include #include @@ -76,36 +77,36 @@ using SampleCountChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, SampleCountAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using GasMinChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, GasMinAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using GasMaxChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, GasMaxAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using BremsMinChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, BremsMinAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using BremsMaxChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, BremsMaxAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; @@ -114,15 +115,15 @@ using DPadDebounceChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, DPadDebounceAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using ButtonDelayChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, ButtonDelayAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; #endif @@ -144,43 +145,43 @@ using GametrakXMinChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, GametrakXMinAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using GametrakXMaxChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, GametrakXMaxAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using GametrakYMinChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, GametrakYMinAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using GametrakYMaxChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, GametrakYMaxAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using GametrakDistMinChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, GametrakDistMinAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using GametrakDistMaxChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, GametrakDistMaxAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; #endif } // namespace @@ -189,41 +190,41 @@ using namespace espgui; BoardcomputerHardwareSettingsMenu::BoardcomputerHardwareSettingsMenu() { - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&bobbyicons::lock>>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); + constructMenuItem, PushScreenAction, StaticMenuItemIcon<&bobbyicons::lock>>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); constructMenuItem, DummyAction>>(); constructMenuItem, DummyAction>>(); - constructMenuItem, SwitchScreenAction>>(); + constructMenuItem, PushScreenAction>>(); #ifdef FEATURE_JOYSTICK - constructMenuItem, SwitchScreenAction>>(); + constructMenuItem, PushScreenAction>>(); #endif - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); #if defined(FEATURE_DPAD) || defined(FEATURE_DPAD_3WIRESW) || defined(FEATURE_DPAD_5WIRESW) || defined(FEATURE_DPAD_5WIRESW_2OUT) || defined (FEATURE_DPAD_6WIRESW) - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); #endif #ifdef FEATURE_GAMETRAK constructMenuItem, constructMenuItem, DummyAction>>(); constructMenuItem, DummyAction>>(); constructMenuItem, DummyAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); #endif constructMenuItem>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&icons::back>>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&icons::back>>>(); } std::string BoardcomputerHardwareSettingsMenu::text() const diff --git a/main/displays/menus/buzzermenu.cpp b/main/displays/menus/buzzermenu.cpp index 4051706..5c51e0c 100644 --- a/main/displays/menus/buzzermenu.cpp +++ b/main/displays/menus/buzzermenu.cpp @@ -3,7 +3,8 @@ // 3rdparty lib includes #include "changevaluedisplay.h" #include "menuitem.h" -#include "actions/switchscreenaction.h" +#include "actions/pushscreenaction.h" +#include "actions/popscreenaction.h" #include "icons/back.h" // local includes @@ -32,8 +33,8 @@ using FrontFreqChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, FrontFreqAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; struct FrontPatternAccessor : public espgui::RefAccessor { uint8_t &getRef() const override { return controllers.front.command.buzzer.pattern; } }; @@ -41,8 +42,8 @@ using FrontPatternChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, FrontPatternAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; struct BackFreqAccessor : public espgui::RefAccessor { uint8_t &getRef() const override { return controllers.back.command.buzzer.freq; } }; @@ -50,8 +51,8 @@ using BackFreqChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, BackFreqAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; struct BackPatternAccessor : public espgui::RefAccessor { uint8_t &getRef() const override { return controllers.back.command.buzzer.pattern; } }; @@ -59,37 +60,37 @@ using BackPatternChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, BackPatternAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using ReverseBeepFreq0ChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, ReverseBeepFreq0Accessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using ReverseBeepFreq1ChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, ReverseBeepFreq1Accessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using ReverseBeepDuration0ChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, ReverseBeepDuration0Accessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using ReverseBeepDuration1ChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, ReverseBeepDuration1Accessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; } // namespace @@ -97,16 +98,16 @@ using namespace espgui; BuzzerMenu::BuzzerMenu() { - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); constructMenuItem, BobbyCheckbox, ReverseBeepAccessor>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); } std::string BuzzerMenu::text() const @@ -116,5 +117,5 @@ std::string BuzzerMenu::text() const void BuzzerMenu::back() { - switchScreen(); + popScreen(); } diff --git a/main/displays/menus/candebugmenu.cpp b/main/displays/menus/candebugmenu.cpp index 88315d1..525f147 100644 --- a/main/displays/menus/candebugmenu.cpp +++ b/main/displays/menus/candebugmenu.cpp @@ -10,14 +10,13 @@ // 3rdparty lib includes #include -#include +#include #include #include #include #include // local includes -#include "displays/menus/debugmenu.h" #include "bobbyerrorhandler.h" namespace { @@ -256,7 +255,7 @@ CanDebugMenu::CanDebugMenu() constructMenuItem, CanStartAction>>(); constructMenuItem, CanUninstallAction>>(); constructMenuItem, CanInstallAction>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); } std::string CanDebugMenu::text() const @@ -285,7 +284,7 @@ void CanDebugMenu::update() void CanDebugMenu::back() { - espgui::switchScreen(); + espgui::popScreen(); } #endif diff --git a/main/displays/menus/commanddebugmenu.h b/main/displays/menus/commanddebugmenu.h index 9fc287d..4e45ae4 100644 --- a/main/displays/menus/commanddebugmenu.h +++ b/main/displays/menus/commanddebugmenu.h @@ -2,11 +2,10 @@ // local includes #include "displays/bobbymenudisplay.h" -#include "debugmenu.h" #include "utils.h" #include "menuitem.h" #include "actions/dummyaction.h" -#include "actions/switchscreenaction.h" +#include "actions/popscreenaction.h" #include "icons/back.h" #include "debugtexthelpers.h" @@ -14,7 +13,7 @@ template class CommandDebugMenu : public BobbyMenuDisplay, public espgui::StaticText, - public espgui::BackActionInterface> + public espgui::BackActionInterface { public: CommandDebugMenu() @@ -24,7 +23,7 @@ public: constructMenuItem>(); constructMenuItem>(); constructMenuItem>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); } private: diff --git a/main/displays/menus/crashmenu.cpp b/main/displays/menus/crashmenu.cpp index ddf74b0..22641c9 100644 --- a/main/displays/menus/crashmenu.cpp +++ b/main/displays/menus/crashmenu.cpp @@ -1,13 +1,12 @@ #include "crashmenu.h" // 3rdparty lib includes -#include "actions/switchscreenaction.h" +#include "actions/popscreenaction.h" #include "icons/back.h" // local includes #include "actions/assertaction.h" #include "actions/dividebyzeroaction.h" -#include "displays/menus/settingsmenu.h" namespace { constexpr char TEXT_CRASHMENU[] = "Crash Menu"; @@ -21,7 +20,7 @@ CrashMenu::CrashMenu() using namespace espgui; constructMenuItem, AssertAction>>(); constructMenuItem, DivideByZeroAction>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); } std::string CrashMenu::text() const @@ -31,5 +30,5 @@ std::string CrashMenu::text() const void CrashMenu::back() { - espgui::switchScreen(); + espgui::popScreen(); } diff --git a/main/displays/menus/debugmenu.cpp b/main/displays/menus/debugmenu.cpp index 560c45b..992ddbd 100644 --- a/main/displays/menus/debugmenu.cpp +++ b/main/displays/menus/debugmenu.cpp @@ -2,7 +2,8 @@ // 3rdparty lib includes #include -#include +#include +#include #include #include #include @@ -27,7 +28,6 @@ #include "displays/menus/feedbackdebugmenu.h" #include "displays/menus/motorfeedbackdebugmenu.h" #include "displays/menus/dynamicdebugmenu.h" -#include "displays/menus/mainmenu.h" #include "displays/menus/batterydebugmenu.h" #include "bobbycheckbox.h" @@ -62,42 +62,42 @@ constexpr char TEXT_BACK[] = "Back"; DebugMenu::DebugMenu() { using namespace espgui; - constructMenuItem, SwitchScreenAction>>(); + constructMenuItem, PushScreenAction>>(); #ifdef FEATURE_CAN - constructMenuItem, SwitchScreenAction>>(); + constructMenuItem, PushScreenAction>>(); #endif - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&bobbyicons::battery>>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction, StaticMenuItemIcon<&bobbyicons::battery>>>(); if (configs.feature.udpcloud.isEnabled.value) { - constructMenuItem, BobbyCheckbox, CloudDebugEnableAccessor>>(); + constructMenuItem, BobbyCheckbox, CloudDebugEnableAccessor>>(); } constructMenuItem, DisabledColor, DummyAction>>(); #ifdef FEATURE_CAN constructMenuItem, DisabledColor, DummyAction>>(); #endif constructMenuItem>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); constructMenuItem>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); constructMenuItem>(); - constructMenuItem, SwitchScreenAction, FrontFeedbackColor>>(); - constructMenuItem, SwitchScreenAction, BackFeedbackColor>>(); + constructMenuItem, PushScreenAction, FrontFeedbackColor>>(); + constructMenuItem, PushScreenAction, BackFeedbackColor>>(); constructMenuItem>(); - constructMenuItem, SwitchScreenAction, FrontFeedbackColor>>(); - constructMenuItem, SwitchScreenAction, FrontFeedbackColor>>(); - constructMenuItem, SwitchScreenAction, BackFeedbackColor>>(); - constructMenuItem, SwitchScreenAction, BackFeedbackColor>>(); + constructMenuItem, PushScreenAction, FrontFeedbackColor>>(); + constructMenuItem, PushScreenAction, FrontFeedbackColor>>(); + constructMenuItem, PushScreenAction, BackFeedbackColor>>(); + constructMenuItem, PushScreenAction, BackFeedbackColor>>(); constructMenuItem>(); constructMenuItem, LoadSettingsAction>>(); constructMenuItem, SaveSettingsAction>>(); constructMenuItem, EraseNvsAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); } std::string DebugMenu::text() const @@ -107,5 +107,5 @@ std::string DebugMenu::text() const void DebugMenu::back() { - espgui::switchScreen(); + espgui::popScreen(); } diff --git a/main/displays/menus/defaultmodesettingsmenu.cpp b/main/displays/menus/defaultmodesettingsmenu.cpp index fa6344e..0281f4d 100644 --- a/main/displays/menus/defaultmodesettingsmenu.cpp +++ b/main/displays/menus/defaultmodesettingsmenu.cpp @@ -3,7 +3,8 @@ // 3rdparty lib includes #include #include -#include +#include +#include #include #include #include @@ -14,7 +15,6 @@ #include "changevaluedisplay_unifiedmodelmode.h" #include "accessors/settingsaccessors.h" #include "displays/menus/handbremssettingsmenu.h" -#include "displays/menus/modessettingsmenu.h" #include "bobbycheckbox.h" namespace { @@ -49,71 +49,71 @@ using DefaultModeModelModeChangeDisplay = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, DefaultModeModelModeAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using DefaultModeSmoothingChangeDisplay = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, DefaultModeSmoothingAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using DefaultModeFwSmoothingLowerLimitChangeDisplay = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, DefaultModeEnableFieldWeakSmoothingLowerLimitAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using DefaultModeFrontPercentageChangeDisplay = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, DefaultModeFrontPercentageAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using DefaultModeBackPercentageChangeDisplay = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, DefaultModeBackPercentageAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using DefaultModeAddSchwelleChangeDisplay = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, DefaultModeAddSchwelleAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using DefaultModeGas1WertChangeDisplay = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, DefaultModeGas1WertAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using DefaultModeGas2WertChangeDisplay = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, DefaultModeGas2WertAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using DefaultModeBrems1WertChangeDisplay = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, DefaultModeBrems1WertAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using DefaultModeBrems2WertChangeDisplay = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, DefaultModeBrems2WertAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; } // namespace @@ -121,24 +121,24 @@ using namespace espgui; DefaultModeSettingsMenu::DefaultModeSettingsMenu() { - constructMenuItem, SwitchScreenAction>>(); + constructMenuItem, PushScreenAction>>(); constructMenuItem, BobbyCheckbox, DefaultModeSquareGasAccessor>>(); constructMenuItem, BobbyCheckbox, DefaultModeSquareBremsAccessor>>(); constructMenuItem, BobbyCheckbox, DefaultModeEnableSmoothingUpAccessor>>(); constructMenuItem, BobbyCheckbox, DefaultModeEnableSmoothingDownAccessor>>(); constructMenuItem, BobbyCheckbox, DefaultModeEnableFieldWeakSmoothingUpAccessor>>(); constructMenuItem, BobbyCheckbox, DefaultModeEnableFieldWeakSmoothingDownAccessor>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); } std::string DefaultModeSettingsMenu::text() const @@ -148,5 +148,5 @@ std::string DefaultModeSettingsMenu::text() const void DefaultModeSettingsMenu::back() { - switchScreen(); + popScreen(); } diff --git a/main/displays/menus/demosmenu.cpp b/main/displays/menus/demosmenu.cpp index 7fc021c..b8e7d91 100644 --- a/main/displays/menus/demosmenu.cpp +++ b/main/displays/menus/demosmenu.cpp @@ -2,13 +2,13 @@ // 3rdparty lib includes #include "menuitem.h" -#include "actions/switchscreenaction.h" +#include "actions/pushscreenaction.h" +#include "actions/popscreenaction.h" #include "icons/back.h" #include "displays/starfielddisplay.h" #include "displays/pingpongdisplay.h" #include "displays/spirodisplay.h" #include "displays/gameoflifedisplay.h" -#include "displays/menus/mainmenu.h" // local includes #include "utils.h" @@ -25,11 +25,11 @@ constexpr char TEXT_BACK[] = "Back"; DemosMenu::DemosMenu() { using namespace espgui; - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); } std::string DemosMenu::text() const @@ -39,5 +39,5 @@ std::string DemosMenu::text() const void DemosMenu::back() { - espgui::switchScreen(); + espgui::popScreen(); } diff --git a/main/displays/menus/dynamicdebugmenu.cpp b/main/displays/menus/dynamicdebugmenu.cpp index 7d7c110..0a708e1 100644 --- a/main/displays/menus/dynamicdebugmenu.cpp +++ b/main/displays/menus/dynamicdebugmenu.cpp @@ -14,6 +14,8 @@ #include #include #include +#include +#include // local includes #include "displays/bobbychangevaluedisplay.h" @@ -90,8 +92,8 @@ using ToggleChangeValueDisplay = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, ToggleAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; class OpenPopupAction : public virtual espgui::ActionInterface @@ -135,7 +137,7 @@ DynamicDebugMenu::DynamicDebugMenu() constructMenuItem, StaticMenuItemIcon<&bobbyicons::lock>, DummyAction>>(); constructMenuItem, BobbyCheckbox, ToggleLockedAccessor>>(); constructMenuItem, BobbyCheckbox, ToggleAccessor>>(); - constructMenuItem, SwitchScreenAction>>(); + constructMenuItem, PushScreenAction>>(); constructMenuItem>(); // more scrolling @@ -146,7 +148,12 @@ DynamicDebugMenu::DynamicDebugMenu() constructMenuItem, DummyAction>>(); constructMenuItem, DummyAction>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); +} + +void DynamicDebugMenu::back() +{ + espgui::popScreen(); } namespace { diff --git a/main/displays/menus/dynamicdebugmenu.h b/main/displays/menus/dynamicdebugmenu.h index ef543a2..1c9385b 100644 --- a/main/displays/menus/dynamicdebugmenu.h +++ b/main/displays/menus/dynamicdebugmenu.h @@ -3,11 +3,9 @@ // 3rdparty lib includes #include #include -#include // local includes #include "displays/bobbymenudisplay.h" -#include "debugmenu.h" class RandomText : public virtual espgui::TextInterface { @@ -21,9 +19,10 @@ private: class DynamicDebugMenu : public BobbyMenuDisplay, - public RandomText, - public espgui::BackActionInterface> + public RandomText { public: DynamicDebugMenu(); + + void back() override; }; diff --git a/main/displays/menus/feedbackdebugmenu.h b/main/displays/menus/feedbackdebugmenu.h index 2774aa7..0cd7a93 100644 --- a/main/displays/menus/feedbackdebugmenu.h +++ b/main/displays/menus/feedbackdebugmenu.h @@ -2,11 +2,10 @@ // local includes #include "displays/bobbymenudisplay.h" -#include "debugmenu.h" #include "utils.h" #include "menuitem.h" #include "actions/dummyaction.h" -#include "actions/switchscreenaction.h" +#include "actions/popscreenaction.h" #include "icons/back.h" #include "debugtexthelpers.h" #include "debugcolorhelpers.h" @@ -16,7 +15,7 @@ template class ColorInterface> class FeedbackDebugMenu : public BobbyMenuDisplay, public espgui::StaticText, - public espgui::BackActionInterface> + public espgui::BackActionInterface { public: FeedbackDebugMenu() @@ -27,7 +26,7 @@ public: //constructMenuItem, DummyAction>>(); constructMenuItem, DummyAction>>(); constructMenuItem, ColorInterface, DummyAction>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); } private: diff --git a/main/displays/menus/gametrakmodesettingsmenu.h b/main/displays/menus/gametrakmodesettingsmenu.h index ca8f329..91f98f6 100644 --- a/main/displays/menus/gametrakmodesettingsmenu.h +++ b/main/displays/menus/gametrakmodesettingsmenu.h @@ -4,7 +4,7 @@ #include "displays/bobbymenudisplay.h" #include "utils.h" #include "menuitem.h" -#include "actions/switchscreenaction.h" +#include "actions/popscreenaction.h" #include "icons/back.h" namespace { @@ -16,7 +16,7 @@ class ContainerModeSettingsMenu : public: ContainerModeSettingsMenu() { - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); } std::string text() const override diff --git a/main/displays/menus/garagenmenu.cpp b/main/displays/menus/garagemenu.cpp similarity index 88% rename from main/displays/menus/garagenmenu.cpp rename to main/displays/menus/garagemenu.cpp index c9dde7a..03a285b 100644 --- a/main/displays/menus/garagenmenu.cpp +++ b/main/displays/menus/garagemenu.cpp @@ -1,4 +1,4 @@ -#include "garagenmenu.h" +#include "garagemenu.h" // 3rd party libs #include @@ -8,8 +8,7 @@ #include // local includes -#include "actions/switchscreenaction.h" -#include "displays/menus/mainmenu.h" +#include "actions/popscreenaction.h" #include "espnowfunctions.h" #include "globals.h" #include "newsettings.h" @@ -42,7 +41,7 @@ GarageMenu::GarageMenu() menuitem.setTitle(wirelessDoor.doorId.value); } - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); } std::string GarageMenu::text() const @@ -52,7 +51,7 @@ std::string GarageMenu::text() const void GarageMenu::back() { - espgui::switchScreen(); + espgui::popScreen(); } namespace { diff --git a/main/displays/menus/garagenmenu.h b/main/displays/menus/garagemenu.h similarity index 100% rename from main/displays/menus/garagenmenu.h rename to main/displays/menus/garagemenu.h diff --git a/main/displays/menus/graphsmenu.cpp b/main/displays/menus/graphsmenu.cpp index 871d28c..e6c805f 100644 --- a/main/displays/menus/graphsmenu.cpp +++ b/main/displays/menus/graphsmenu.cpp @@ -1,7 +1,8 @@ #include "graphsmenu.h" // 3rdparty lib includes -#include "actions/switchscreenaction.h" +#include "actions/pushscreenaction.h" +#include "actions/popscreenaction.h" #include "icons/back.h" #include "graphdisplay.h" #include "splitgraphdisplay.h" @@ -11,7 +12,6 @@ #include "displays/bobbysplitgraphdisplay.h" #include "utils.h" #include "statistics.h" -#include "displays/menus/mainmenu.h" namespace { constexpr char TEXT_GRAPHS[] = "Graphs"; @@ -36,83 +36,83 @@ using GasGraphDisplay = espgui::makeComponent< BobbyGraphDisplay<1>, espgui::StaticText, espgui::SingleGraphAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using BremsGraphDisplay = espgui::makeComponent< BobbyGraphDisplay<1>, espgui::StaticText, espgui::SingleGraphAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using PotisGraphDisplay = espgui::makeComponent< BobbyGraphDisplay<2>, espgui::StaticText, espgui::DualGraphAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using PotisSplitGraphDisplay = espgui::makeComponent< BobbySplitGraphDisplay<1, 1>, espgui::StaticText, espgui::SingleTopGraphAccessor, espgui::SingleBottomGraphAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using AvgSpeedGraphDisplay = espgui::makeComponent< BobbyGraphDisplay<1>, espgui::StaticText, espgui::SingleGraphAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using AvgSpeedKmhGraphDisplay = espgui::makeComponent< BobbyGraphDisplay<1>, espgui::StaticText, espgui::SingleGraphAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using SumCurrentGraphDisplay = espgui::makeComponent< BobbyGraphDisplay<1>, espgui::StaticText, espgui::SingleGraphAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using FrontVoltageGraphDisplay = espgui::makeComponent< BobbyGraphDisplay<1>, espgui::StaticText, espgui::SingleGraphAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using BackVoltageGraphDisplay = espgui::makeComponent< BobbyGraphDisplay<1>, espgui::StaticText, espgui::SingleGraphAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using VoltagesGraphDisplay = espgui::makeComponent< BobbyGraphDisplay<2>, espgui::StaticText, espgui::DualGraphAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using VoltagesSplitGraphDisplay = espgui::makeComponent< BobbySplitGraphDisplay<1, 1>, espgui::StaticText, espgui::SingleTopGraphAccessor, espgui::SingleBottomGraphAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; #ifdef FEATURE_BMS @@ -120,29 +120,29 @@ using BmsVoltageGraphDisplay = espgui::makeComponent< BobbyGraphDisplay<1>, espgui::StaticText, espgui::SingleGraphAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using BmsCurrentGraphDisplay = espgui::makeComponent< BobbyGraphDisplay<1>, espgui::StaticText, espgui::SingleGraphAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using BmsPowerGraphDisplay = espgui::makeComponent< BobbyGraphDisplay<1>, espgui::StaticText, espgui::SingleGraphAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using SumCurrentsComparisonGraphDisplay = espgui::makeComponent< BobbyGraphDisplay<2>, espgui::StaticText, DualGraphAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; #endif @@ -157,42 +157,42 @@ using MotorCurrentsGraphDisplay = espgui::makeComponent< BobbyGraphDisplay<4>, espgui::StaticText, MotorCurrentsStatistics, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using RssiGraphDisplay = espgui::makeComponent< BobbyGraphDisplay<1>, espgui::StaticText, espgui::SingleGraphAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; } // namespace GraphsMenu::GraphsMenu() { using namespace espgui; - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); #ifdef FEATURE_BMS - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); #endif - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); } std::string GraphsMenu::text() const @@ -202,5 +202,5 @@ std::string GraphsMenu::text() const void GraphsMenu::back() { - espgui::switchScreen(); + espgui::popScreen(); } diff --git a/main/displays/menus/greenpassmenu.cpp b/main/displays/menus/greenpassmenu.cpp index fe56317..db99cc3 100644 --- a/main/displays/menus/greenpassmenu.cpp +++ b/main/displays/menus/greenpassmenu.cpp @@ -6,13 +6,13 @@ // 3rdparty lib includes #include -#include "actions/switchscreenaction.h" +#include "actions/pushscreenaction.h" +#include "actions/popscreenaction.h" #include "actions/dummyaction.h" #include "icons/back.h" // local includes #include "actions/qraction.h" -#include "displays/menus/mainmenu.h" #include "displays/qrdisplay.h" #include "displays/qrimportdisplay.h" #include "qrimport.h" @@ -49,11 +49,11 @@ public: if (deleteMode) { qrimport::delete_qr_code(m_qrmenu.text); - espgui::switchScreen(); + espgui::popScreen(); } else { - espgui::switchScreen>(m_qrmenu.message); + espgui::pushScreen>(m_qrmenu.message); } } private: @@ -87,8 +87,9 @@ GreenPassMenu::GreenPassMenu() constructMenuItem, StaticText>>(std::move(nvs_key)); } } + constructMenuItem, BobbyCheckbox, DeleteModeAccessor>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); } std::string GreenPassMenu::text() const @@ -98,5 +99,5 @@ std::string GreenPassMenu::text() const void GreenPassMenu::back() { - espgui::switchScreen(); + espgui::popScreen(); } diff --git a/main/displays/menus/handbremssettingsmenu.cpp b/main/displays/menus/handbremssettingsmenu.cpp index 186b10f..b7bd1a5 100644 --- a/main/displays/menus/handbremssettingsmenu.cpp +++ b/main/displays/menus/handbremssettingsmenu.cpp @@ -39,7 +39,7 @@ HandbremsSettingsMenu::HandbremsSettingsMenu() constructMenuItem, BobbyCheckbox, HandbremsEnabledAccessor>>(); constructMenuItem, BobbyCheckbox, HandbremsAutomaticAccessor>>(); constructMenuItem, BobbyCheckbox, HandbremsVisualizeAccessor>>(); - constructMenuItem>(&configs.handbremse.mode); + constructMenuItem>(&configs.handbremse.mode); constructMenuItem, SwitchScreenAction>>(); constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); } diff --git a/main/displays/menus/larsmmodesettingsmenu.cpp b/main/displays/menus/larsmmodesettingsmenu.cpp index f3b9c78..00cc97f 100644 --- a/main/displays/menus/larsmmodesettingsmenu.cpp +++ b/main/displays/menus/larsmmodesettingsmenu.cpp @@ -3,7 +3,8 @@ // 3rdparty lib includes #include "changevaluedisplay.h" #include "menuitem.h" -#include "actions/switchscreenaction.h" +#include "actions/pushscreenaction.h" +#include "actions/popscreenaction.h" #include "icons/back.h" // local includes @@ -12,7 +13,6 @@ #include "changevaluedisplay_larsmmode_mode.h" #include "changevaluedisplay_unifiedmodelmode.h" #include "accessors/settingsaccessors.h" -#include "displays/menus/modessettingsmenu.h" namespace { constexpr char TEXT_LARSMMODESETTINGS[] = "Larsm mode settings"; @@ -25,22 +25,22 @@ using LarsmModeModelModeChangeDisplay = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, LarsmModeModelModeAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using LarsmModeModeChangeDisplay = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, LarsmModeModeAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using LarsmModeIterationsChangeDisplay = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, LarsmModeIterationsAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; } // namespace @@ -48,10 +48,10 @@ using namespace espgui; LarsmModeSettingsMenu::LarsmModeSettingsMenu() { - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); } std::string LarsmModeSettingsMenu::text() const @@ -61,5 +61,5 @@ std::string LarsmModeSettingsMenu::text() const void LarsmModeSettingsMenu::back() { - switchScreen(); + popScreen(); } diff --git a/main/displays/menus/ledstripmenu.cpp b/main/displays/menus/ledstripmenu.cpp index c89b214..7a4a671 100644 --- a/main/displays/menus/ledstripmenu.cpp +++ b/main/displays/menus/ledstripmenu.cpp @@ -3,7 +3,8 @@ // 3rdparty lib includes #include #include -#include +#include +#include #include #include #include @@ -53,32 +54,32 @@ using LedsCountChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, LedsCountAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using CenterOffsetChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, CenterOffsetAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using SmallOffsetChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, SmallOffsetAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using BigOffsetChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, BigOffsetAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using LedStripMaxAmpereChangeScreen = espgui::makeComponent< @@ -86,40 +87,40 @@ using LedStripMaxAmpereChangeScreen = espgui::makeComponent< espgui::StaticText, LedStripMaxAmpereAccessor, espgui::RatioNumberStep>, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using StVOOffsetChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, LedsStVOFrontOffsetAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using StVOLengthChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, LedsStVOFrontLengthAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using AnimationMultiplierChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, AnimationMultiplierAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using LedStripBrightnessChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, LedstripBrightnessAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; class AllCustomLedsOffAction : public virtual espgui::ActionInterface @@ -154,30 +155,31 @@ LedstripMenu::LedstripMenu() constructMenuItem, BobbyCheckbox, LedstripAutomaticLightAccessor>>(); constructMenuItem, BobbyCheckbox, EnableLedAnimationAccessor>>(); - constructMenuItem>(&configs.ledstrip.animationType); - constructMenuItem, BobbyCheckbox, EnableBrakeLightsAccessor>>(); + constructMenuItem>(&configs.ledstrip.animationType); - constructMenuItem, espgui::SwitchScreenAction>>(); + constructMenuItem, BobbyCheckbox, EnableBrakeLightsAccessor>>(); + + constructMenuItem, espgui::PushScreenAction>>(); constructMenuItem, AllCustomLedsOffAction>>(); - constructMenuItem, BobbyCheckbox, EnableBeepWhenBlinkAccessor>>(); - constructMenuItem, BobbyCheckbox, EnableFullBlinkAccessor>>(); + constructMenuItem, BobbyCheckbox, EnableBeepWhenBlinkAccessor>>(); + constructMenuItem, BobbyCheckbox, EnableFullBlinkAccessor>>(); - if (!simplified) { constructMenuItem, espgui::SwitchScreenAction>>(); } - if (!simplified) { constructMenuItem, espgui::SwitchScreenAction>>(); } + if (!simplified) { constructMenuItem, espgui::PushScreenAction>>(); } + if (!simplified) { constructMenuItem, espgui::PushScreenAction>>(); } - constructMenuItem, espgui::SwitchScreenAction>>(); + constructMenuItem, espgui::PushScreenAction>>(); if (configs.feature.ota.isEnabled.value) - if (!simplified) { constructMenuItem, espgui::SwitchScreenAction>>(); } - constructMenuItem, espgui::SwitchScreenAction>>(); - if (!simplified) { constructMenuItem, espgui::SwitchScreenAction>>(); } - if (!simplified) { constructMenuItem, espgui::SwitchScreenAction>>(); } - if (!simplified) { constructMenuItem, espgui::SwitchScreenAction>>(); } - if (!simplified) { constructMenuItem, espgui::SwitchScreenAction>>(); } - if (!simplified) { constructMenuItem, espgui::SwitchScreenAction>>(); } - if (!simplified) { constructMenuItem>>(); } - constructMenuItem, espgui::SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + if (!simplified) { constructMenuItem, espgui::PushScreenAction>>(); } + constructMenuItem, espgui::PushScreenAction>>(); + if (!simplified) { constructMenuItem, espgui::PushScreenAction>>(); } + if (!simplified) { constructMenuItem, espgui::PushScreenAction>>(); } + if (!simplified) { constructMenuItem, espgui::PushScreenAction>>(); } + if (!simplified) { constructMenuItem, espgui::PushScreenAction>>(); } + if (!simplified) { constructMenuItem, espgui::PushScreenAction>>(); } + if (!simplified) { constructMenuItem>>(); } + constructMenuItem, espgui::PushScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); } std::string LedstripMenu::text() const @@ -187,5 +189,5 @@ std::string LedstripMenu::text() const void LedstripMenu::back() { - espgui::switchScreen(); + espgui::popScreen(); } diff --git a/main/displays/menus/ledstripselectanimationmenu.cpp b/main/displays/menus/ledstripselectanimationmenu.cpp new file mode 100644 index 0000000..6d7a6cf --- /dev/null +++ b/main/displays/menus/ledstripselectanimationmenu.cpp @@ -0,0 +1,72 @@ +#include "ledstripselectanimationmenu.h" + +// Local includes +#include "actions/dummyaction.h" +#include "actions/ledstripanimationactions.h" +#include "actions/popscreenaction.h" +#include "icons/back.h" +#include "ledstripdefines.h" +#include "ledstripmenu.h" +#include "newsettings.h" + +#ifdef FEATURE_LEDSTRIP +namespace { +constexpr char TEXT_SELECTANIMATION[] = "Select Animation"; +constexpr char TEXT_ANIMATION_DEFAULTRAINBOW[] = "Default Rainbow"; +constexpr char TEXT_ANIMATION_BETTERRAINBOW[] = "Better Rainbow"; +constexpr char TEXT_ANIMATION_SPEEDSYNCANIMATION[] = "Speed Sync"; +constexpr char TEXT_ANIMATION_CUSTOMCOLOR[] = "Custom Color"; +constexpr char TEXT_BACK[] = "Back"; + +class CurrentSelectedAnimationText : public virtual espgui::TextInterface +{ +public: + std::string text() const override; +}; + +} // namespace + +LedstripSelectAnimationMenu::LedstripSelectAnimationMenu() +{ + using namespace espgui; + + constructMenuItem>(); + constructMenuItem>(); + constructMenuItem, LedStripSetAnimationAction>>(); + constructMenuItem, LedStripSetAnimationAction>>(); + constructMenuItem, LedStripSetAnimationAction>>(); + constructMenuItem, LedStripSetAnimationAction>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); +} + +std::string LedstripSelectAnimationMenu::text() const +{ + return TEXT_SELECTANIMATION; +} + +void LedstripSelectAnimationMenu::back() +{ + espgui::popScreen(); +} + +namespace { + +std::string CurrentSelectedAnimationText::text() const +{ + switch (configs.ledstrip.animationType.value) + { + case LedstripAnimation::DefaultRainbow: + return TEXT_ANIMATION_DEFAULTRAINBOW; + case LedstripAnimation::BetterRainbow: + return TEXT_ANIMATION_BETTERRAINBOW; + case LedstripAnimation::SpeedSync: + return TEXT_ANIMATION_SPEEDSYNCANIMATION; + case LedstripAnimation::CustomColor: + return TEXT_ANIMATION_CUSTOMCOLOR; + default: + return "Animation Unkown"; + } +} + +} // namespace +#endif diff --git a/main/displays/menus/ledstripselectblinkmenu.cpp b/main/displays/menus/ledstripselectblinkmenu.cpp index fe0f1a4..cd67f2a 100644 --- a/main/displays/menus/ledstripselectblinkmenu.cpp +++ b/main/displays/menus/ledstripselectblinkmenu.cpp @@ -2,13 +2,12 @@ // 3rdparty lib includes #include "actions/dummyaction.h" -#include "actions/switchscreenaction.h" +#include "actions/popscreenaction.h" #include "icons/back.h" // local includes #include "accessors/settingsaccessors.h" #include "actions/ledstripblinkactions.h" -#include "displays/menus/ledstripmenu.h" #include "ledstrip.h" #include "ledstripdefines.h" #include "bobbycheckbox.h" @@ -42,7 +41,7 @@ LedstripSelectBlinkMenu::LedstripSelectBlinkMenu() constructMenuItem, LedstripAnimationBlinkBothAction>>(); constructMenuItem, BobbyCheckbox, LedstripEnableBlinkAnimationAccessor>>(); constructMenuItem, BobbyCheckbox, LedstripEnableVisualizeBlinkAnimationAccessor>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); } std::string LedstripSelectBlinkMenu::text() const @@ -52,7 +51,7 @@ std::string LedstripSelectBlinkMenu::text() const void LedstripSelectBlinkMenu::back() { - espgui::switchScreen(); + espgui::popScreen(); } namespace { diff --git a/main/displays/menus/ledstripselectotamode.cpp b/main/displays/menus/ledstripselectotamode.cpp index 81dd95a..4355d06 100644 --- a/main/displays/menus/ledstripselectotamode.cpp +++ b/main/displays/menus/ledstripselectotamode.cpp @@ -1,14 +1,14 @@ #include "ledstripselectotamode.h" // 3rdparty lib includes -#include "actions/switchscreenaction.h" +#include "actions/pushscreenaction.h" +#include "actions/popscreenaction.h" #include "icons/back.h" // local includes #include "ledstrip.h" #include "newsettings.h" #include "utils.h" -#include "ledstripmenu.h" namespace { constexpr char TEXT_BLINKANIMATION[] = "Blink animation"; @@ -34,7 +34,7 @@ LedstripOtaAnimationChangeMenu::LedstripOtaAnimationChangeMenu() constructMenuItem, LedstripChangeOtaAnimModeAction>>(); constructMenuItem, LedstripChangeOtaAnimModeAction>>(); constructMenuItem, LedstripChangeOtaAnimModeAction>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); } std::string LedstripOtaAnimationChangeMenu::text() const @@ -44,5 +44,5 @@ std::string LedstripOtaAnimationChangeMenu::text() const void LedstripOtaAnimationChangeMenu::back() { - espgui::switchScreen(); + espgui::popScreen(); } diff --git a/main/displays/menus/limitssettingsmenu.cpp b/main/displays/menus/limitssettingsmenu.cpp index 1ff5c26..6b455a0 100644 --- a/main/displays/menus/limitssettingsmenu.cpp +++ b/main/displays/menus/limitssettingsmenu.cpp @@ -3,7 +3,8 @@ // 3rdparty lib includes #include #include -#include +#include +#include #include #include @@ -11,7 +12,6 @@ #include "displays/bobbychangevaluedisplay.h" #include "utils.h" #include "accessors/settingsaccessors.h" -#include "displays/menus/settingsmenu.h" namespace { constexpr char TEXT_LIMITSSETTINGS[] = "Limit settings"; @@ -27,43 +27,43 @@ using IMotMaxChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, IMotMaxAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using IDcMaxChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, IDcMaxAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using NMotMaxKmhChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, NMotMaxKmhAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using NMotMaxRpmChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, NMotMaxRpmAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using FieldWeakMaxChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, FieldWeakMaxAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using PhaseAdvMaxChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, PhaseAdvMaxAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; } // namespace @@ -71,13 +71,13 @@ using namespace espgui; LimitsSettingsMenu::LimitsSettingsMenu() { - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); } std::string LimitsSettingsMenu::text() const @@ -87,5 +87,5 @@ std::string LimitsSettingsMenu::text() const void LimitsSettingsMenu::back() { - switchScreen(); + popScreen(); } diff --git a/main/displays/menus/mainmenu.cpp b/main/displays/menus/mainmenu.cpp index 919dece..067d334 100644 --- a/main/displays/menus/mainmenu.cpp +++ b/main/displays/menus/mainmenu.cpp @@ -1,11 +1,12 @@ #include "mainmenu.h" // 3rdparty lib includes -#include "actions/switchscreenaction.h" -#include "icons/back.h" +#include +#include +#include +#include // local includes -#include "displays/statusdisplay.h" #include "displays/menus/selectmodemenu.h" #include "displays/menus/selectmodemenu.h" #include "displays/menus/ledstripmenu.h" @@ -21,7 +22,7 @@ #include "displays/menus/demosmenu.h" #include "displays/menus/greenpassmenu.h" #include "displays/lockscreen.h" -#include "displays/menus/garagenmenu.h" +#include "displays/menus/garagemenu.h" #include "displays/menus/otamenu.h" #include "displays/poweroffdisplay.h" #include "displays/menus/statisticsmenu.h" @@ -45,7 +46,7 @@ #include "icons/statistics.h" #include "icons/greenpass.h" #include "icons/time.h" -#include "tftinstance.h" +#include "displays/statusdisplay.h" namespace { constexpr char TAG[] = "BOBBY"; @@ -84,40 +85,40 @@ MainMenu::MainMenu() using namespace espgui; // constructMenuItem>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PushScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); if (configs.feature.ledstrip.isEnabled.value) { - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&bobbyicons::neopixel>>>(); + constructMenuItem, PushScreenAction, StaticMenuItemIcon<&bobbyicons::neopixel>>>(); } - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&bobbyicons::statistics>>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&bobbyicons::modes>>>(); + constructMenuItem, PushScreenAction, StaticMenuItemIcon<&bobbyicons::statistics>>>(); + constructMenuItem, PushScreenAction, StaticMenuItemIcon<&bobbyicons::modes>>>(); if (SHOWITEM) { constructMenuItem, ModeSettingsAction>>(); } - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&bobbyicons::battery>>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&bobbyicons::settings>>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&bobbyicons::greenpass>>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&bobbyicons::lock>>>(); + constructMenuItem, PushScreenAction, StaticMenuItemIcon<&bobbyicons::battery>>>(); + constructMenuItem, PushScreenAction, StaticMenuItemIcon<&bobbyicons::settings>>>(); + constructMenuItem, PushScreenAction, StaticMenuItemIcon<&bobbyicons::greenpass>>>(); + constructMenuItem, PushScreenAction, StaticMenuItemIcon<&bobbyicons::lock>>>(); if (configs.feature.garage.isEnabled.value && configs.feature.esp_now.isEnabled.value) { - constructMenuItem, SwitchScreenAction>>(); + constructMenuItem, PushScreenAction>>(); } if (configs.feature.ota.isEnabled.value) - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&bobbyicons::update>>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&bobbyicons::graph>>>(); + constructMenuItem, PushScreenAction, StaticMenuItemIcon<&bobbyicons::update>>>(); + constructMenuItem, PushScreenAction, StaticMenuItemIcon<&bobbyicons::graph>>>(); #if defined(FEATURE_CAN) && defined(FEATURE_POWERSUPPLY) - constructMenuItem, SwitchScreenAction>>(); + constructMenuItem, PushScreenAction>>(); #endif #ifdef FEATURE_MOSFETS - constructMenuItem, SwitchScreenAction>>(); + constructMenuItem, PushScreenAction>>(); #endif #if defined(FEATURE_BLUETOOTH) && defined(FEATURE_BMS) - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&bobbyicons::bms>>>(); + constructMenuItem, PushScreenAction, StaticMenuItemIcon<&bobbyicons::bms>>>(); #endif - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&bobbyicons::demos>>>(); - if (SHOWITEM) { constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&bobbyicons::presets>>>(); } - if (SHOWITEM) { constructMenuItem,SwitchScreenAction, StaticMenuItemIcon<&bobbyicons::presets>>>(); } - if (SHOWITEM) { constructMenuItem, SwitchScreenAction>>(); } - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&bobbyicons::poweroff>>>(); - constructMenuItem, SwitchScreenAction>>(); + constructMenuItem, PushScreenAction, StaticMenuItemIcon<&bobbyicons::demos>>>(); + if (SHOWITEM) { constructMenuItem, PushScreenAction, StaticMenuItemIcon<&bobbyicons::presets>>>(); } + if (SHOWITEM) { constructMenuItem,PushScreenAction, StaticMenuItemIcon<&bobbyicons::presets>>>(); } + if (SHOWITEM) { constructMenuItem, PushScreenAction>>(); } + constructMenuItem, PushScreenAction, StaticMenuItemIcon<&bobbyicons::poweroff>>>(); + constructMenuItem, PushScreenAction>>(); constructMenuItem, RebootAction, StaticMenuItemIcon<&bobbyicons::reboot>>>(); //#ifdef MAINMENU_PLUGIN // GMEN1 @@ -131,5 +132,5 @@ std::string MainMenu::text() const void MainMenu::back() { - espgui::switchScreen(); + espgui::popScreen(); } diff --git a/main/displays/menus/mosfetsmenu.cpp b/main/displays/menus/mosfetsmenu.cpp index 11b1c21..72ea7dd 100644 --- a/main/displays/menus/mosfetsmenu.cpp +++ b/main/displays/menus/mosfetsmenu.cpp @@ -3,11 +3,10 @@ #ifdef FEATURE_MOSFETS // 3rdparty lib includes #include "accessorinterface.h" -#include "actions/switchscreenaction.h" +#include "actions/popscreenaction.h" #include "icons/back.h" // local includes -#include "displays/menus/mainmenu.h" #include "bobbycheckbox.h" #include "types.h" @@ -37,7 +36,7 @@ MosfetsMenu::MosfetsMenu() constructMenuItem, BobbyCheckbox, Mosfet0Accessor>>(); constructMenuItem, BobbyCheckbox, Mosfet1Accessor>>(); constructMenuItem, BobbyCheckbox, Mosfet2Accessor>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); } std::string MosfetsMenu::text() const @@ -47,7 +46,7 @@ std::string MosfetsMenu::text() const void MosfetsMenu::back() { - espgui::switchScreen(); + espgui::popScreen(); } #endif diff --git a/main/displays/menus/motorfeedbackdebugmenu.h b/main/displays/menus/motorfeedbackdebugmenu.h index e879ec9..303ebdd 100644 --- a/main/displays/menus/motorfeedbackdebugmenu.h +++ b/main/displays/menus/motorfeedbackdebugmenu.h @@ -2,11 +2,10 @@ // local includes #include "displays/bobbymenudisplay.h" -#include "debugmenu.h" #include "utils.h" #include "menuitem.h" #include "actions/dummyaction.h" -#include "actions/switchscreenaction.h" +#include "actions/popscreenaction.h" #include "icons/back.h" #include "debugtexthelpers.h" #include "debugcolorhelpers.h" @@ -15,7 +14,7 @@ template class ColorInterface> class MotorFeedbackDebugMenu : public BobbyMenuDisplay, public espgui::StaticText, - public espgui::BackActionInterface> + public espgui::BackActionInterface { public: MotorFeedbackDebugMenu() @@ -36,7 +35,7 @@ public: constructMenuItem, DummyAction>>(); constructMenuItem, DummyAction>>(); constructMenuItem, DummyAction>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); } private: diff --git a/main/displays/menus/motorstatedebugmenu.h b/main/displays/menus/motorstatedebugmenu.h index 3b8589c..8237bbf 100644 --- a/main/displays/menus/motorstatedebugmenu.h +++ b/main/displays/menus/motorstatedebugmenu.h @@ -3,12 +3,11 @@ // 3rdparty lib includes #include "menuitem.h" #include "actions/dummyaction.h" -#include "actions/switchscreenaction.h" +#include "actions/popscreenaction.h" #include "icons/back.h" // local includes #include "displays/bobbymenudisplay.h" -#include "debugmenu.h" #include "utils.h" #include "debugtexthelpers.h" @@ -16,7 +15,7 @@ template class MotorStateDebugMenu : public BobbyMenuDisplay, public espgui::StaticText, - public espgui::BackActionInterface> + public espgui::BackActionInterface { public: MotorStateDebugMenu() @@ -33,7 +32,7 @@ public: constructMenuItem>(); constructMenuItem>(); constructMenuItem>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); } private: diff --git a/main/displays/menus/motortestmodesettingsmenu.cpp b/main/displays/menus/motortestmodesettingsmenu.cpp index 1554929..f85460e 100644 --- a/main/displays/menus/motortestmodesettingsmenu.cpp +++ b/main/displays/menus/motortestmodesettingsmenu.cpp @@ -3,14 +3,14 @@ // 3rdparty lib includes #include "changevaluedisplay.h" #include "menuitem.h" -#include "actions/switchscreenaction.h" +#include "actions/pushscreenaction.h" +#include "actions/popscreenaction.h" #include "icons/back.h" // local includes #include "displays/bobbychangevaluedisplay.h" #include "utils.h" #include "accessors/settingsaccessors.h" -#include "displays/menus/modessettingsmenu.h" namespace { constexpr char TEXT_MOTORTESTMODESETTINGS[] = "Motortest mode seetings"; @@ -22,16 +22,16 @@ using MotortestMultiplikatorChangeDisplay = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, MotortestModeMultiplikatorAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using MotortestMaxPwmChangeDisplay = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, MotortestMaxPwmAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; } // namespace @@ -39,9 +39,9 @@ using namespace espgui; MotortestModeSettingsMenu::MotortestModeSettingsMenu() { - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); } std::string MotortestModeSettingsMenu::text() const @@ -51,5 +51,5 @@ std::string MotortestModeSettingsMenu::text() const void MotortestModeSettingsMenu::back() { - switchScreen(); + popScreen(); } diff --git a/main/displays/menus/networksettingsmenu.cpp b/main/displays/menus/networksettingsmenu.cpp index 0494c73..2c5c59b 100644 --- a/main/displays/menus/networksettingsmenu.cpp +++ b/main/displays/menus/networksettingsmenu.cpp @@ -2,7 +2,10 @@ // 3rdparty lib includes #include -#include +#include +#include +#include +#include #include #include #include @@ -13,6 +16,8 @@ #include "globals.h" #include "utils.h" #include "settingsmenu.h" +#include "wifistasettingsmenu.h" +#include "wifiapsettingsmenu.h" #include "texthelpers/networktexthelpers.h" #include "wifiapsettingsmenu.h" #include "wifistasettingsmenu.h" @@ -28,17 +33,16 @@ constexpr char TEXT_BACK[] = "Back"; NetworkSettingsMenu::NetworkSettingsMenu() { - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); constructMenuItem, NetworkAccessPointQRAction>>(); - constructMenuItem>(); constructMenuItem>(); constructMenuItem>(uint8_t{0}); constructMenuItem>(uint8_t{1}); constructMenuItem>(uint8_t{2}); constructMenuItem>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&icons::back>>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&icons::back>>>(); } std::string NetworkSettingsMenu::text() const @@ -48,7 +52,7 @@ std::string NetworkSettingsMenu::text() const void NetworkSettingsMenu::back() { - switchScreen(); + popScreen(); } void NetworkAccessPointQRAction::triggered() diff --git a/main/displays/menus/otamenu.cpp b/main/displays/menus/otamenu.cpp index 64dceb3..cdd5088 100644 --- a/main/displays/menus/otamenu.cpp +++ b/main/displays/menus/otamenu.cpp @@ -3,7 +3,8 @@ // 3rdparty lib includes #include "actioninterface.h" #include "actions/dummyaction.h" -#include "actions/switchscreenaction.h" +#include "actions/pushscreenaction.h" +#include "actions/popscreenaction.h" // local includes #include "icons/back.h" @@ -12,7 +13,6 @@ #include "displays/menus/selectotabuildmenu.h" #include "displays/menus/selectbuildserverbranch.h" #include "displays/menus/selectbuildservermenu.h" -#include "displays/menus/mainmenu.h" #include "displays/updatedisplay.h" namespace { @@ -27,11 +27,11 @@ constexpr char TEXT_BACK[] = "Back"; OtaMenu::OtaMenu() { using namespace espgui; - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&bobbyicons::presets>>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&bobbyicons::update>>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PushScreenAction, StaticMenuItemIcon<&bobbyicons::presets>>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction, StaticMenuItemIcon<&bobbyicons::update>>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); } std::string OtaMenu::text() const @@ -41,5 +41,5 @@ std::string OtaMenu::text() const void OtaMenu::back() { - espgui::switchScreen(); + espgui::popScreen(); } diff --git a/main/displays/menus/profilesmenu.cpp b/main/displays/menus/profilesmenu.cpp index 6b6d08b..08f58f5 100644 --- a/main/displays/menus/profilesmenu.cpp +++ b/main/displays/menus/profilesmenu.cpp @@ -2,8 +2,7 @@ // local includes #include "actions/switchprofileaction.h" -#include "actions/switchscreenaction.h" -#include "displays/menus/mainmenu.h" +#include "actions/popscreenaction.h" #include "icons/back.h" #include "menudisplay.h" @@ -22,7 +21,7 @@ ProfilesMenu::ProfilesMenu() constructMenuItem, SwitchProfileAction<1>>>(); constructMenuItem, SwitchProfileAction<2>>>(); constructMenuItem, SwitchProfileAction<3>>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); } std::string ProfilesMenu::text() const @@ -32,5 +31,5 @@ std::string ProfilesMenu::text() const void ProfilesMenu::back() { - switchScreen(); + popScreen(); } diff --git a/main/displays/menus/selectbatterytypemenu.cpp b/main/displays/menus/selectbatterytypemenu.cpp new file mode 100644 index 0000000..7bba839 --- /dev/null +++ b/main/displays/menus/selectbatterytypemenu.cpp @@ -0,0 +1,71 @@ +#include "selectbatterytypemenu.h" + +// 3rdparty lib includes +#include +#include +#include +#include +#include + +// local includes +#include "battery.h" +#include "newsettings.h" +#include "utils.h" +#include "displays/menus/batterymenu.h" +#include "batterymenu.h" +#include "displays/menus/mainmenu.h" + +namespace { +constexpr char TEXT_CELL_SERIES[] = "Cells (Series)"; +constexpr char TEXT_CELL_PARALLEL[] = "Cells (Parallel)"; +constexpr char TEXT_SELECT_CELL_TYPE[] = "Select Cell Type"; +constexpr char TEXT_CELL_TYPE[] = "Cell Type"; +constexpr char TEXT_BATTERY_CALIBRATE[] = "Calibrate Voltages"; +constexpr char TEXT_BATTERY_TYPE_22P[] = "22P cells"; +constexpr char TEXT_BATTERY_TYPE_HG2[] = "HG2 cells"; +constexpr char TEXT_BATTERY_TYPE_MH1[] = "MH1 cells"; +constexpr char TEXT_BATTERY_TYPE_VTC5[] = "VTC5 cells"; +constexpr char TEXT_BATTERY_TYPE_BAK_25R[] = "BAK / 25R cells"; +constexpr char TEXT_BATTERY_WHKM[] = "Wh per km"; +constexpr char TEXT_BATTERY_APPLYCALIB[] = "Apply calibration"; +constexpr char TEXT_VOLTAGECALIBRATION_RESET[] = "Reset calibration"; +constexpr char TEXT_BACK[] = "Back"; + +class CurrentBatteryTypeText : public virtual espgui::TextInterface +{ +public: + std::string text() const override + { + return getBatteryCellTypeString(); + } +}; + +template +class BatterySelectTypeAction : public virtual espgui::ActionInterface +{ +public: + void triggered() override { configs.write_config(configs.battery.cellType, uint8_t(T)); } +}; +} // namespace + +BatteryTypeMenu::BatteryTypeMenu() +{ + using namespace espgui; + constructMenuItem>(); + constructMenuItem, BatterySelectTypeAction>>(); + constructMenuItem, BatterySelectTypeAction>>(); + constructMenuItem, BatterySelectTypeAction>>(); + constructMenuItem, BatterySelectTypeAction>>(); + constructMenuItem, BatterySelectTypeAction>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); +} + +std::string BatteryTypeMenu::text() const +{ + return TEXT_SELECT_CELL_TYPE; +} + +void BatteryTypeMenu::back() +{ + espgui::popScreen(); +} diff --git a/main/displays/menus/selectbuildserverbranch.cpp b/main/displays/menus/selectbuildserverbranch.cpp index f7f5b4c..7409e5c 100644 --- a/main/displays/menus/selectbuildserverbranch.cpp +++ b/main/displays/menus/selectbuildserverbranch.cpp @@ -2,6 +2,9 @@ // 3rd party includes #include +#include "actions/dummyaction.h" +#include "actions/popscreenaction.h" +#include "icons/back.h" // local includes #include "actions/dummyaction.h" @@ -10,6 +13,8 @@ #include "buildserver.h" #include "displays/menus/otamenu.h" #include "icons/back.h" +#include "buildserver.h" +#include "globals.h" #include "icons/reboot.h" #include "newsettings.h" @@ -85,7 +90,7 @@ SelectBuildserverBranchMenu::SelectBuildserverBranchMenu() #define ERR_MESSAGE(text) \ constructMenuItem, DefaultFont, StaticColor, DummyAction>>(); \ - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); \ + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); \ return; if (count_available_buildserver() < 1) @@ -144,12 +149,12 @@ void SelectBuildserverBranchMenu::update() constructMenuItem>(); constructMenuItem, ClearBranchAction, StaticMenuItemIcon<&bobbyicons::reboot>>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); } Base::update(); } void SelectBuildserverBranchMenu::back() { - espgui::switchScreen(); + espgui::popScreen(); } diff --git a/main/displays/menus/selectbuildservermenu.cpp b/main/displays/menus/selectbuildservermenu.cpp index c56be87..9a9cf9b 100644 --- a/main/displays/menus/selectbuildservermenu.cpp +++ b/main/displays/menus/selectbuildservermenu.cpp @@ -4,14 +4,13 @@ #include // 3rdparty lib includes -#include +#include #include #include #include // local includes #include "buildserver.h" -#include "displays/menus/otamenu.h" #include "utils.h" #include "newsettings.h" @@ -69,7 +68,7 @@ SelectBuildServerMenu::SelectBuildServerMenu() constructMenuItem, DefaultFont, StaticColor, DummyAction>>(); } - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); } std::string SelectBuildServerMenu::text() const @@ -79,5 +78,5 @@ std::string SelectBuildServerMenu::text() const void SelectBuildServerMenu::back() { - espgui::switchScreen(); + espgui::popScreen(); } diff --git a/main/displays/menus/selectmodemenu.cpp b/main/displays/menus/selectmodemenu.cpp index e0c1d5e..66c86a6 100644 --- a/main/displays/menus/selectmodemenu.cpp +++ b/main/displays/menus/selectmodemenu.cpp @@ -2,9 +2,10 @@ // 3rdparty lib includes #include -#include +#include #include #include +#include // local includes #include "utils.h" @@ -20,7 +21,7 @@ #include "modes/wheelchairmode.h" #endif #include "accessors/globalaccessors.h" -#include "displays/menus/mainmenu.h" +#include "mainmenu.h" namespace { constexpr char TEXT_SELECTMODE[] = "Select mode"; @@ -60,19 +61,19 @@ using namespace espgui; SelectModeMenu::SelectModeMenu() { - constructMenuItem, MultiAction>>>(); - if (!simplified) { constructMenuItem, MultiAction>>>(); } - constructMenuItem, MultiAction>>>(); - constructMenuItem, MultiAction>>>(); - if (!simplified) { constructMenuItem, MultiAction>>>(); } + constructMenuItem, MultiAction>>>(); + if (!simplified) { constructMenuItem, MultiAction>>>(); } + constructMenuItem, MultiAction>>>(); + constructMenuItem, MultiAction>>>(); + if (!simplified) { constructMenuItem, MultiAction>>>(); } #ifdef FEATURE_GAMETRAK - constructMenuItem, MultiAction>>>(); + constructMenuItem, MultiAction>>(); #endif - if (!simplified) { constructMenuItem, MultiAction>>>(); } + if (!simplified) { constructMenuItem, MultiAction>>>(); } #ifdef FEATURE_JOYSTICK - constructMenuItem, MultiAction>>>(); + constructMenuItem, MultiAction>>>(); #endif - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PushScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); } std::string SelectModeMenu::text() const @@ -113,5 +114,5 @@ void SelectModeMenu::start() void SelectModeMenu::back() { - switchScreen(); + popScreen(); } diff --git a/main/displays/menus/selectotabuildmenu.cpp b/main/displays/menus/selectotabuildmenu.cpp index dd3b0be..3142a65 100644 --- a/main/displays/menus/selectotabuildmenu.cpp +++ b/main/displays/menus/selectotabuildmenu.cpp @@ -4,6 +4,9 @@ #include #include "esp_log.h" #include "fmt/core.h" +#include "actions/popscreenaction.h" +#include "actions/dummyaction.h" +#include "icons/back.h" // local includes #include "actions/dummyaction.h" @@ -12,6 +15,9 @@ #include "buildserver.h" #include "displays/menus/otamenu.h" #include "icons/back.h" +#include "buildserver.h" +#include "utils.h" +#include "globals.h" #include "newsettings.h" #define MESSAGE(text) constructMenuItem, DefaultFont, StaticColor, DummyAction>>() @@ -58,12 +64,12 @@ SelectBuildMenu::SelectBuildMenu() if (buildserver::count_available_buildserver() < 1) { MESSAGE(TEXT_OTA_NOBUILDSERVERAVAILABLE); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); } else if (configs.otaServerUrl.value.empty()) { MESSAGE(TEXT_OTA_NOBUILDSERVERSELECTED); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); } else { @@ -71,7 +77,7 @@ SelectBuildMenu::SelectBuildMenu() if (staStatus != wifi_stack::WiFiStaStatus::CONNECTED) { MESSAGE(TEXT_OTA_NOCONNECTION); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); } else { @@ -84,7 +90,7 @@ SelectBuildMenu::SelectBuildMenu() auto hash = filename.substr(0, filename.length() - 4); menuitem.setHash(hash); menuitem.setUrl(serverUrl); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); } else { @@ -135,10 +141,10 @@ void SelectBuildMenu::buildMenuFromJson() menuitem.setHash(hash); menuitem.setUrl(fmt::format(url_for_hashes, hash)); } - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); } void SelectBuildMenu::back() { - switchScreen(); + popScreen(); } diff --git a/main/displays/menus/settingsmenu.cpp b/main/displays/menus/settingsmenu.cpp index b742e87..a527c16 100644 --- a/main/displays/menus/settingsmenu.cpp +++ b/main/displays/menus/settingsmenu.cpp @@ -4,7 +4,8 @@ #include // 3rdparty lib includes -#include "actions/switchscreenaction.h" +#include "actions/pushscreenaction.h" +#include "actions/popscreenaction.h" #include "icons/back.h" // local includes @@ -81,39 +82,39 @@ SettingsMenu::SettingsMenu() constructMenuItem, BobbyCheckbox, BacklightAccessor>>(); #endif if (!simplified) - constructMenuItem, SwitchScreenAction>>(); + constructMenuItem, PushScreenAction>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&bobbyicons::wifi>>>(); + constructMenuItem, PushScreenAction, StaticMenuItemIcon<&bobbyicons::wifi>>>(); if (configs.feature.esp_now.isEnabled.value) - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&bobbyicons::wifi>>>(); + constructMenuItem, PushScreenAction, StaticMenuItemIcon<&bobbyicons::wifi>>>(); #ifdef FEATURE_BLUETOOTH - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&bobbyicons::bluetooth>>>(); + constructMenuItem, PushScreenAction, StaticMenuItemIcon<&bobbyicons::bluetooth>>>(); #endif if (configs.feature.ble.isEnabled.value) - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&bobbyicons::bluetooth>>>(); + constructMenuItem, PushScreenAction, StaticMenuItemIcon<&bobbyicons::bluetooth>>>(); if (configs.feature.cloud.isEnabled.value) - constructMenuItem, SwitchScreenAction>>(); + constructMenuItem, PushScreenAction>>(); if (configs.feature.udpcloud.isEnabled.value) - constructMenuItem, SwitchScreenAction>>(); + constructMenuItem, PushScreenAction>>(); if (configs.feature.ota.isEnabled.value) - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&bobbyicons::update>>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&bobbyicons::time>>>(); + constructMenuItem, PushScreenAction, StaticMenuItemIcon<&bobbyicons::update>>>(); + constructMenuItem, PushScreenAction, StaticMenuItemIcon<&bobbyicons::time>>>(); if (!simplified) { - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&bobbyicons::hardware>>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&bobbyicons::hardware>>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction, StaticMenuItemIcon<&bobbyicons::hardware>>>(); + constructMenuItem, PushScreenAction, StaticMenuItemIcon<&bobbyicons::hardware>>>(); } - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&bobbyicons::demos>>>(); + constructMenuItem, PushScreenAction, StaticMenuItemIcon<&bobbyicons::demos>>>(); //#if defined(FEATURE_BLUETOOTH) && defined(FEATURE_BMS) // constructMenuItem, BobbyCheckbox, AutoConnectBmsAccessor>>(); //#endif - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&bobbyicons::buzzer>>>(); + constructMenuItem, PushScreenAction, StaticMenuItemIcon<&bobbyicons::buzzer>>>(); constructMenuItem, BobbyCheckbox, FrontLedAccessor>>(); constructMenuItem, BobbyCheckbox, BackLedAccessor>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&bobbyicons::demos>>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&bobbyicons::info>>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PushScreenAction, StaticMenuItemIcon<&bobbyicons::demos>>>(); + constructMenuItem, PushScreenAction, StaticMenuItemIcon<&bobbyicons::info>>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); } std::string SettingsMenu::text() const @@ -123,5 +124,5 @@ std::string SettingsMenu::text() const void SettingsMenu::back() { - switchScreen(); + popScreen(); } diff --git a/main/displays/menus/statisticsmenu.cpp b/main/displays/menus/statisticsmenu.cpp index cb767fd..1880f7a 100644 --- a/main/displays/menus/statisticsmenu.cpp +++ b/main/displays/menus/statisticsmenu.cpp @@ -3,13 +3,12 @@ // 3rdparty lib includes #include #include "actions/dummyaction.h" -#include "actions/switchscreenaction.h" +#include "actions/popscreenaction.h" #include "actioninterface.h" #include "fmt/core.h" #include "icons/back.h" // local includes -#include "mainmenu.h" #include "utils.h" #include "icons/time.h" #include "icons/reboot.h" @@ -187,7 +186,7 @@ StatisticsMenu::StatisticsMenu() constructMenuItem>(); constructMenuItem, SaveKilometersAction, StaticMenuItemIcon<&bobbyicons::update>>>(); constructMenuItem, ClearCurrentStatsAction, StaticMenuItemIcon<&bobbyicons::reboot>>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); } std::string StatisticsMenu::text() const @@ -197,5 +196,5 @@ std::string StatisticsMenu::text() const void StatisticsMenu::back() { - espgui::switchScreen(); + espgui::popScreen(); } diff --git a/main/displays/menus/taskmanagermenu.cpp b/main/displays/menus/taskmanagermenu.cpp index 9da00a5..9680365 100644 --- a/main/displays/menus/taskmanagermenu.cpp +++ b/main/displays/menus/taskmanagermenu.cpp @@ -2,13 +2,12 @@ // 3rdparty lib includes #include -#include +#include #include #include #include // local includes -#include "displays/menus/debugmenu.h" #include "taskmanager.h" using namespace espgui; @@ -38,7 +37,7 @@ TaskmanagerMenu::TaskmanagerMenu() { for (const auto &task : schedulerTasks) constructMenuItem>(task); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); } std::string TaskmanagerMenu::text() const @@ -48,5 +47,5 @@ std::string TaskmanagerMenu::text() const void TaskmanagerMenu::back() { - switchScreen(); + popScreen(); } diff --git a/main/displays/menus/tempomatmodesettingsmenu.cpp b/main/displays/menus/tempomatmodesettingsmenu.cpp index 960c75c..daf3324 100644 --- a/main/displays/menus/tempomatmodesettingsmenu.cpp +++ b/main/displays/menus/tempomatmodesettingsmenu.cpp @@ -3,7 +3,8 @@ // 3rdparty lib includes #include #include -#include +#include +#include #include #include @@ -14,7 +15,6 @@ #include "accessors/settingsaccessors.h" #include "accessors/globalaccessors.h" #include "actions/tempomatmodeapplycurrentpeedaction.h" -#include "displays/menus/modessettingsmenu.h" namespace { constexpr char TEXT_TEMPOMATMODESETTINGS[] = "Tempomat mode settings"; @@ -27,16 +27,16 @@ using TempomatModeCruiseMotTgtChangeDisplay = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, TempomatModeCruiseMotTgtAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using TempomatModeModelModeChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, TempomatModeModelModeAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; } // namespace @@ -45,9 +45,9 @@ using namespace espgui; TempomatModeSettingsMenu::TempomatModeSettingsMenu() { constructMenuItem, TempomatModeApplyCurrentSpeedAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); } std::string TempomatModeSettingsMenu::text() const @@ -57,5 +57,5 @@ std::string TempomatModeSettingsMenu::text() const void TempomatModeSettingsMenu::back() { - switchScreen(); + popScreen(); } diff --git a/main/displays/menus/typesafeenumchangemenu.h b/main/displays/menus/typesafeenumchangemenu.h index 4a9d730..58e7208 100644 --- a/main/displays/menus/typesafeenumchangemenu.h +++ b/main/displays/menus/typesafeenumchangemenu.h @@ -4,11 +4,12 @@ #include #include #include +#include +#include +#include // local includes #include "globals.h" -#include "actions/dummyaction.h" -#include "actions/switchscreenaction.h" #include "displays/bobbymenudisplay.h" #include "bobbyerrorhandler.h" @@ -57,7 +58,7 @@ private: ConfigWrapper* m_config; }; -template +template class TypeSafeChangeMenu : public BobbyMenuDisplay { @@ -71,7 +72,7 @@ public: iterateEnum::iterate([&](TEnum enum_value, const auto &string_value){ constructMenuItem>(enum_value, m_config); }); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); } std::string text() const override @@ -81,7 +82,7 @@ public: void back() override { - espgui::switchScreen(); + espgui::popScreen(); } private: ConfigWrapper* m_config; @@ -102,7 +103,47 @@ public: void triggered() override { - espgui::switchScreen>(m_config); + espgui::switchScreen>(m_config); + } +private: + ConfigWrapper* m_config; +}; + +template +class PopScreenTypeSafeChangeMenuItem : public espgui::MenuItem +{ +public: + PopScreenTypeSafeChangeMenuItem(ConfigWrapper* config) : m_config{config} {} + + static constexpr const char *STATIC_TEXT = Ttext; + std::string text() const override + { + return Ttext; + } + + void triggered() override + { + espgui::popScreen(); + } +private: + ConfigWrapper* m_config; +}; + +template +class PushScreenTypeSafeChangeMenuItem : public espgui::MenuItem +{ +public: + PushScreenTypeSafeChangeMenuItem(ConfigWrapper* config) : m_config{config} {} + + static constexpr const char *STATIC_TEXT = Ttext; + std::string text() const override + { + return Ttext; + } + + void triggered() override + { + espgui::pushScreen>(m_config); } private: ConfigWrapper* m_config; diff --git a/main/displays/menus/wifiapclientsmenu.cpp b/main/displays/menus/wifiapclientsmenu.cpp index f8bd51f..38af0b7 100644 --- a/main/displays/menus/wifiapclientsmenu.cpp +++ b/main/displays/menus/wifiapclientsmenu.cpp @@ -9,7 +9,7 @@ // 3rdparty lib includes #include #include -#include +#include #include #include #include @@ -51,12 +51,12 @@ private: WifiApClientsMenu::WifiApClientsMenu() : espgui::ChangeableText{"AP Clients"s} { - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&icons::back>>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&icons::back>>>(); } void WifiApClientsMenu::back() { - switchScreen(); + popScreen(); } void WifiApClientsMenu::start() diff --git a/main/displays/menus/wifiapsettingsmenu.cpp b/main/displays/menus/wifiapsettingsmenu.cpp index f9884fa..8dd8928 100644 --- a/main/displays/menus/wifiapsettingsmenu.cpp +++ b/main/displays/menus/wifiapsettingsmenu.cpp @@ -6,7 +6,8 @@ // 3rdparty lib includes #include #include -#include +#include +#include #include #include #include @@ -56,48 +57,48 @@ using ApSsidChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, WifiApSsidAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using ApKeyChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, WifiApKeyAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using ApIpChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, WifiApIpAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using ApMaskChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, WifiApMaskAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using ApChannelChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, WifiApChannelAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; using ApAuthmodeChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, WifiApAuthmodeAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; } // namespace @@ -105,16 +106,16 @@ WifiApSettingsMenu::WifiApSettingsMenu() { constructMenuItem, BobbyCheckbox, WifiApEnabledAccessor>>(); //constructMenuItem, BobbyCheckbox, WifiApDisableWhenOnlineAccessor>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); constructMenuItem>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PushScreenAction>>(); constructMenuItem>(); constructMenuItem>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&icons::back>>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&icons::back>>>(); } std::string WifiApSettingsMenu::text() const @@ -124,7 +125,7 @@ std::string WifiApSettingsMenu::text() const void WifiApSettingsMenu::back() { - switchScreen(); + popScreen(); } namespace { @@ -132,7 +133,7 @@ void WifiApClientsAction::triggered() { wifi_sta_list_t clients; if (const auto result = esp_wifi_ap_get_sta_list(&clients); result == ESP_OK) - switchScreen(); + pushScreen(); else ESP_LOGW(TAG, "esp_wifi_ap_get_sta_list() failed with %s", esp_err_to_name(result)); } diff --git a/main/displays/menus/wifistaconfigentrymenu.cpp b/main/displays/menus/wifistaconfigentrymenu.cpp index ccdd01d..ad2af3c 100644 --- a/main/displays/menus/wifistaconfigentrymenu.cpp +++ b/main/displays/menus/wifistaconfigentrymenu.cpp @@ -3,7 +3,8 @@ // 3rdparty lib includes #include #include -#include +#include +#include #include #include #include @@ -48,8 +49,8 @@ class StaChangeScreen : public: explicit StaChangeScreen(int index) : Taccessor{index}, m_index{index} {} std::string text() const override { return fmt::format(Ttitle, m_index + 1); } - void confirm() override { espgui::switchScreen(m_index); } - void back() override { espgui::switchScreen(m_index); } + void confirm() override { espgui::popScreen(); } + void back() override { espgui::popScreen(); } private: const int m_index; @@ -66,7 +67,7 @@ public: m_index{index} {} - void triggered() override { espgui::switchScreen(m_index); } + void triggered() override { espgui::pushScreen(m_index); } private: const int m_index; @@ -123,7 +124,7 @@ WifiStaConfigEntryMenu::WifiStaConfigEntryMenu(int index) : constructMenuItem(index); constructMenuItem(index); constructMenuItem>>(index); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&icons::back>>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&icons::back>>>(); } std::string WifiStaConfigEntryMenu::text() const @@ -133,7 +134,7 @@ std::string WifiStaConfigEntryMenu::text() const void WifiStaConfigEntryMenu::back() { - espgui::switchScreen(); + espgui::popScreen(); } namespace { diff --git a/main/displays/menus/wifistaconfigsmenu.cpp b/main/displays/menus/wifistaconfigsmenu.cpp index 1cd5429..593e876 100644 --- a/main/displays/menus/wifistaconfigsmenu.cpp +++ b/main/displays/menus/wifistaconfigsmenu.cpp @@ -3,7 +3,8 @@ // 3rdparty lib includes #include #include -#include +#include +#include #include #include #include @@ -37,7 +38,7 @@ WifiStaConfigsMenu::WifiStaConfigsMenu() { for (int i = 0; i < configs.wifi_configs.size(); i++) constructMenuItem(i); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&icons::back>>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&icons::back>>>(); } std::string WifiStaConfigsMenu::text() const @@ -47,14 +48,14 @@ std::string WifiStaConfigsMenu::text() const void WifiStaConfigsMenu::back() { - switchScreen(); + popScreen(); } namespace { void WifiStaConfigurationMenuItem::triggered() { - switchScreen(m_index); + pushScreen(m_index); } std::string WifiStaConfigurationMenuItem::text() const diff --git a/main/displays/menus/wifistascanentrymenu.cpp b/main/displays/menus/wifistascanentrymenu.cpp index 915232d..4f8ca4c 100644 --- a/main/displays/menus/wifistascanentrymenu.cpp +++ b/main/displays/menus/wifistascanentrymenu.cpp @@ -9,7 +9,8 @@ // 3rdparty lib includes #include #include -#include +#include +#include #include #include #include @@ -97,7 +98,7 @@ WifiStaScanEntryMenu::WifiStaScanEntryMenu(const wifi_ap_record_t &info) : default: return std::to_string(m_info.country.policy); } }())); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&icons::back>>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&icons::back>>>(); } std::string WifiStaScanEntryMenu::text() const @@ -107,7 +108,7 @@ std::string WifiStaScanEntryMenu::text() const void WifiStaScanEntryMenu::back() { - switchScreen(); + popScreen(); } namespace { @@ -128,7 +129,7 @@ void SaveNewWifiConfigAction::triggered() return; } - switchScreen(std::distance(std::begin(configs.wifi_configs), iter)); + pushScreen(std::distance(std::begin(configs.wifi_configs), iter)); } } // namespace diff --git a/main/displays/menus/wifistascanmenu.cpp b/main/displays/menus/wifistascanmenu.cpp index 6be6158..5e2bed6 100644 --- a/main/displays/menus/wifistascanmenu.cpp +++ b/main/displays/menus/wifistascanmenu.cpp @@ -5,7 +5,8 @@ // 3rdparty lib includes #include -#include +#include +#include #include #include #include @@ -17,7 +18,6 @@ // local includes #include "actions/wifistascanaction.h" #include "actions/wifistascanclearaction.h" -#include "wifistasettingsmenu.h" #include "wifiguiutils.h" #include "wifistascanentrymenu.h" #include "newsettings.h" @@ -50,7 +50,7 @@ WifiStaScanMenu::WifiStaScanMenu() { constructMenuItem, WifiStaScanAction>>(); constructMenuItem, WifiStaScanClearAction>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&icons::back>>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&icons::back>>>(); } std::string WifiStaScanMenu::text() const @@ -77,7 +77,7 @@ std::string WifiStaScanMenu::text() const void WifiStaScanMenu::back() { - switchScreen(); + popScreen(); } void WifiStaScanMenu::start() @@ -124,7 +124,7 @@ namespace { void WifiStaScanMenuItem::triggered() { - switchScreen(m_info); + pushScreen(m_info); } std::string WifiStaScanMenuItem::text() const diff --git a/main/displays/menus/wifistasettingsmenu.cpp b/main/displays/menus/wifistasettingsmenu.cpp index 462c3f8..d2aa16e 100644 --- a/main/displays/menus/wifistasettingsmenu.cpp +++ b/main/displays/menus/wifistasettingsmenu.cpp @@ -3,7 +3,8 @@ // 3rdparty lib includes #include #include -#include +#include +#include #include #include #include @@ -14,7 +15,6 @@ #include "wifistascanmenu.h" #include "wifistaconfigsmenu.h" #include "accessors/wifistaconfigaccessors.h" -#include "networksettingsmenu.h" #include "texthelpers/wifistatexthelpers.h" #include "bobbycheckbox.h" @@ -31,8 +31,8 @@ using StaMinRssiChangeScreen = espgui::makeComponent< BobbyChangeValueDisplay, espgui::StaticText, WifiStaMinRssiAccessor, - espgui::ConfirmActionInterface>, - espgui::BackActionInterface> + espgui::ConfirmActionInterface, + espgui::BackActionInterface >; } // namespace @@ -41,8 +41,8 @@ WifiStaSettingsMenu::WifiStaSettingsMenu() constructMenuItem, BobbyCheckbox, WifiStaEnabledAccessor>>(); constructMenuItem>(); constructMenuItem>(); - constructMenuItem>>(); - constructMenuItem, SwitchScreenAction>>(); + constructMenuItem>>(); + constructMenuItem, PushScreenAction>>(); constructMenuItem>(); constructMenuItem>(); constructMenuItem>(); @@ -55,8 +55,8 @@ WifiStaSettingsMenu::WifiStaSettingsMenu() constructMenuItem>(); constructMenuItem>(); constructMenuItem>(); - constructMenuItem, SwitchScreenAction>>(); - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&icons::back>>>(); + constructMenuItem, PushScreenAction>>(); + constructMenuItem, PopScreenAction, StaticMenuItemIcon<&icons::back>>>(); } std::string WifiStaSettingsMenu::text() const @@ -66,5 +66,5 @@ std::string WifiStaSettingsMenu::text() const void WifiStaSettingsMenu::back() { - switchScreen(); + popScreen(); } diff --git a/main/displays/metersdisplay.cpp b/main/displays/metersdisplay.cpp index c7e3f3e..e413fd8 100644 --- a/main/displays/metersdisplay.cpp +++ b/main/displays/metersdisplay.cpp @@ -57,14 +57,9 @@ void MetersDisplay::buttonPressed(espgui::Button button) switch (button) { - using espgui::Button; - case Button::Left: - case Button::Right: - switchScreen(); - break; - case Button::Up: - switchScreen(); - break; + using espgui::Button; + case Button::Right: pushScreen(); break; + case Button::Up: switchScreen(); break; case Button::Down: #ifdef FEATURE_BMS switchScreen(); @@ -72,5 +67,6 @@ void MetersDisplay::buttonPressed(espgui::Button button) switchScreen(); #endif break; + default:; } } diff --git a/main/displays/pingpongdisplay.cpp b/main/displays/pingpongdisplay.cpp index 7558b10..0c036e6 100644 --- a/main/displays/pingpongdisplay.cpp +++ b/main/displays/pingpongdisplay.cpp @@ -6,9 +6,6 @@ #include #include -// local includes -#include "displays/menus/demosmenu.h" - PingPongDisplay::PingPongDisplay() : lpaddle_y(cpputils::randomNumber(0, h - paddle_h, espcpputils::esp_random_device{})), rpaddle_y(cpputils::randomNumber(0, h - paddle_h, espcpputils::esp_random_device{})), @@ -55,8 +52,7 @@ void PingPongDisplay::buttonPressed(espgui::Button button) { using espgui::Button; case Button::Left: - case Button::Right: - espgui::switchScreen(); + espgui::popScreen(); break; default:; } diff --git a/main/displays/poweroffdisplay.cpp b/main/displays/poweroffdisplay.cpp index 80266c6..f3bc49f 100644 --- a/main/displays/poweroffdisplay.cpp +++ b/main/displays/poweroffdisplay.cpp @@ -7,7 +7,6 @@ // local includes #include "utils.h" #include "globals.h" -#include "displays/menus/mainmenu.h" using namespace std::chrono_literals; @@ -43,7 +42,7 @@ void PoweroffDisplay::update() Base::update(); if (espchrono::millis_clock::now() - m_startTime >= 1000ms) - espgui::switchScreen(); + espgui::popScreen(); } void PoweroffDisplay::stop() diff --git a/main/displays/powersupplydisplay.cpp b/main/displays/powersupplydisplay.cpp index 587f812..12f26a1 100644 --- a/main/displays/powersupplydisplay.cpp +++ b/main/displays/powersupplydisplay.cpp @@ -3,11 +3,9 @@ // 3rdparty lib includes #include #include -#include "actions/switchscreenaction.h" // local includes #include "globals.h" -#include "displays/menus/mainmenu.h" #if defined(FEATURE_CAN) && defined(FEATURE_POWERSUPPLY) void PowerSupplyDisplay::initScreen() @@ -42,7 +40,7 @@ void PowerSupplyDisplay::buttonPressed(espgui::Button button) using espgui::Button; case Button::Left: case Button::Right: - espgui::switchScreen(); + espgui::popScreen(); break; default:; } diff --git a/main/displays/qrcodedebug.cpp b/main/displays/qrcodedebug.cpp index 1bb80ab..8450c86 100644 --- a/main/displays/qrcodedebug.cpp +++ b/main/displays/qrcodedebug.cpp @@ -1,9 +1,10 @@ #include "qrcodedebug.h" +// 3rdparty lib includes #include #include -#include "displays/menus/debugmenu.h" +// local includes #include "globals.h" #include "screenmanager.h" #include "newsettings.h" @@ -26,9 +27,7 @@ void QrCodeDebugDisplay::buttonPressed(espgui::Button button) switch (button) { using espgui::Button; - case Button::Left: - switchScreen(); - break; + case Button::Left: popScreen(); break; case Button::Right: { uint8_t qrcodeBytes[qrcode_getBufferSize(7)]; diff --git a/main/displays/qrimportdisplay.h b/main/displays/qrimportdisplay.h index 74c8ca2..11784bb 100644 --- a/main/displays/qrimportdisplay.h +++ b/main/displays/qrimportdisplay.h @@ -88,7 +88,7 @@ public: { tft.setTextColor(TFT_GREEN, TFT_BLACK); m_statuslabel.redraw("OK"); - switchScreen(); + popScreen(); } } @@ -102,7 +102,7 @@ public: using espgui::Button; case Button::Left: if (!m_waitingForResult) - switchScreen(); + popScreen(); else ESP_LOGW(TAG, "tried to leave while waiting for result"); break; diff --git a/main/displays/spirodisplay.cpp b/main/displays/spirodisplay.cpp index 164a6d9..a627689 100644 --- a/main/displays/spirodisplay.cpp +++ b/main/displays/spirodisplay.cpp @@ -6,9 +6,6 @@ #include #include -// local includes -#include "displays/menus/demosmenu.h" - void SpiroDisplay::initScreen() { Base::initScreen(); @@ -88,8 +85,7 @@ void SpiroDisplay::buttonPressed(espgui::Button button) { using espgui::Button; case Button::Left: - case Button::Right: - espgui::switchScreen(); + espgui::popScreen(); break; default:; } diff --git a/main/displays/starfielddisplay.cpp b/main/displays/starfielddisplay.cpp index 377f358..2615498 100644 --- a/main/displays/starfielddisplay.cpp +++ b/main/displays/starfielddisplay.cpp @@ -87,8 +87,7 @@ void StarfieldDisplay::buttonPressed(espgui::Button button) { using espgui::Button; case Button::Left: - case Button::Right: - espgui::switchScreen(); + espgui::popScreen(); break; default:; } diff --git a/main/displays/statusdisplay.cpp b/main/displays/statusdisplay.cpp index 1213877..f730caf 100644 --- a/main/displays/statusdisplay.cpp +++ b/main/displays/statusdisplay.cpp @@ -230,9 +230,7 @@ void StatusDisplay::buttonPressed(espgui::Button button) switch (button) { using espgui::Button; - case Button::Right: - switchScreen(); - break; + case Button::Right: pushScreen(); break; case Button::Up: if (simplified) return; diff --git a/main/displays/statusdisplay.h b/main/displays/statusdisplay.h index e810b0d..469b9dc 100644 --- a/main/displays/statusdisplay.h +++ b/main/displays/statusdisplay.h @@ -4,7 +4,6 @@ #include // 3rdparty lib includes -#include #include #include #include diff --git a/main/displays/updatedisplay.cpp b/main/displays/updatedisplay.cpp index 31a1b5c..db12db2 100644 --- a/main/displays/updatedisplay.cpp +++ b/main/displays/updatedisplay.cpp @@ -16,7 +16,6 @@ // local includes #include "globals.h" #include "ota.h" -#include "displays/menus/otamenu.h" #include "newsettings.h" void UpdateDisplay::initScreen() @@ -106,7 +105,7 @@ void UpdateDisplay::buttonPressed(espgui::Button button) { using espgui::Button; case Button::Left: - espgui::switchScreen(); + espgui::popScreen(); break; case Button::Right: if (const auto result = triggerOta(configs.otaUrl.value); !result) diff --git a/main/main.cpp b/main/main.cpp index bd33ef6..c966a44 100644 --- a/main/main.cpp +++ b/main/main.cpp @@ -35,7 +35,7 @@ using namespace std::chrono_literals; namespace { espchrono::millis_clock::time_point lastStatsPush; std::optional lastStatsUpdate; -} +} // namespace extern "C" void app_main() { diff --git a/sdkconfig_allfeatures b/sdkconfig_allfeatures index eac35b2..760a869 100644 --- a/sdkconfig_allfeatures +++ b/sdkconfig_allfeatures @@ -20,7 +20,6 @@ CONFIG_SOC_EMAC_SUPPORTED=y CONFIG_SOC_CPU_CORES_NUM=2 CONFIG_SOC_ULP_SUPPORTED=y CONFIG_SOC_CCOMP_TIMER_SUPPORTED=y -CONFIG_SOC_EFUSE_SECURE_BOOT_KEY_DIGESTS=y CONFIG_SOC_RTC_FAST_MEM_SUPPORTED=y CONFIG_SOC_RTC_SLOW_MEM_SUPPORTED=y CONFIG_SOC_I2S_SUPPORTED=y @@ -30,6 +29,8 @@ CONFIG_SOC_SUPPORT_COEXISTENCE=y CONFIG_SOC_AES_SUPPORTED=y CONFIG_SOC_MPI_SUPPORTED=y CONFIG_SOC_SHA_SUPPORTED=y +CONFIG_SOC_FLASH_ENC_SUPPORTED=y +CONFIG_SOC_SECURE_BOOT_SUPPORTED=y CONFIG_SOC_ADC_RTC_CTRL_SUPPORTED=y CONFIG_SOC_ADC_DIG_CTRL_SUPPORTED=y CONFIG_SOC_ADC_PERIPH_NUM=2 @@ -140,6 +141,8 @@ CONFIG_SOC_RSA_MAX_BIT_LEN=4096 CONFIG_SOC_AES_SUPPORT_AES_128=y CONFIG_SOC_AES_SUPPORT_AES_192=y CONFIG_SOC_AES_SUPPORT_AES_256=y +CONFIG_SOC_SECURE_BOOT_V1=y +CONFIG_SOC_EFUSE_SECURE_BOOT_KEY_DIGESTS=y CONFIG_SOC_FLASH_ENCRYPTED_XTS_AES_BLOCK_MAX=32 CONFIG_SOC_PHY_DIG_REGS_MEM_SIZE=21 CONFIG_SOC_PM_SUPPORT_EXT_WAKEUP=y @@ -210,6 +213,7 @@ CONFIG_BOOTLOADER_FLASH_XMC_SUPPORT=y # # Security features # +CONFIG_SECURE_BOOT_V1_SUPPORTED=y # CONFIG_SECURE_SIGNED_APPS_NO_SECURE_BOOT is not set # CONFIG_SECURE_BOOT is not set # CONFIG_SECURE_FLASH_ENC_ENABLED is not set @@ -396,6 +400,10 @@ CONFIG_COMPILER_STACK_CHECK_MODE_NONE=y # # CONFIG_APPTRACE_DEST_JTAG is not set CONFIG_APPTRACE_DEST_NONE=y +# CONFIG_APPTRACE_DEST_UART1 is not set +# CONFIG_APPTRACE_DEST_UART2 is not set +CONFIG_APPTRACE_DEST_UART_NONE=y +CONFIG_APPTRACE_UART_TASK_PRIO=1 CONFIG_APPTRACE_LOCK_ENABLE=y # end of Application Level Tracing @@ -581,6 +589,7 @@ CONFIG_SPI_SLAVE_ISR_IN_IRAM=y # GPIO Configuration # # CONFIG_GPIO_ESP32_SUPPORT_SWITCH_SLP_PULL is not set +# CONFIG_GPIO_CTRL_FUNC_IN_IRAM is not set # end of GPIO Configuration # @@ -618,8 +627,8 @@ CONFIG_EFUSE_MAX_BLK_LEN=192 # CONFIG_ESP_TLS_USING_MBEDTLS=y # CONFIG_ESP_TLS_USE_SECURE_ELEMENT is not set -# CONFIG_ESP_TLS_SERVER is not set # CONFIG_ESP_TLS_CLIENT_SESSION_TICKETS is not set +# CONFIG_ESP_TLS_SERVER is not set # CONFIG_ESP_TLS_PSK_VERIFICATION is not set # CONFIG_ESP_TLS_INSECURE is not set # end of ESP-TLS @@ -757,6 +766,12 @@ CONFIG_ESP_SLEEP_RTC_BUS_ISO_WORKAROUND=y # RTC Clock Config # # end of RTC Clock Config + +# +# Peripheral Control +# +# CONFIG_PERIPH_CTRL_FUNC_IN_IRAM is not set +# end of Peripheral Control # end of Hardware Settings # @@ -1255,6 +1270,7 @@ CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_DEFAULT_FULL=y # CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_DEFAULT_CMN is not set # CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_DEFAULT_NONE is not set # CONFIG_MBEDTLS_CUSTOM_CERTIFICATE_BUNDLE is not set +CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_MAX_CERTS=200 # end of Certificate Bundle CONFIG_MBEDTLS_ECP_RESTARTABLE=y @@ -1547,6 +1563,8 @@ CONFIG_WL_SECTOR_SIZE=4096 CONFIG_WIFI_PROV_SCAN_MAX_ENTRIES=16 CONFIG_WIFI_PROV_AUTOSTOP_TIMEOUT=30 # CONFIG_WIFI_PROV_BLE_BONDING is not set +CONFIG_WIFI_PROV_BLE_SEC_CONN=y +CONFIG_WIFI_PROV_BLE_FORCE_ENCRYPTION=y # end of Wi-Fi Provisioning Manager # diff --git a/sdkconfig_comred b/sdkconfig_comred index 3504e5a..b514eea 100644 --- a/sdkconfig_comred +++ b/sdkconfig_comred @@ -20,7 +20,6 @@ CONFIG_SOC_EMAC_SUPPORTED=y CONFIG_SOC_CPU_CORES_NUM=2 CONFIG_SOC_ULP_SUPPORTED=y CONFIG_SOC_CCOMP_TIMER_SUPPORTED=y -CONFIG_SOC_EFUSE_SECURE_BOOT_KEY_DIGESTS=y CONFIG_SOC_RTC_FAST_MEM_SUPPORTED=y CONFIG_SOC_RTC_SLOW_MEM_SUPPORTED=y CONFIG_SOC_I2S_SUPPORTED=y @@ -30,6 +29,8 @@ CONFIG_SOC_SUPPORT_COEXISTENCE=y CONFIG_SOC_AES_SUPPORTED=y CONFIG_SOC_MPI_SUPPORTED=y CONFIG_SOC_SHA_SUPPORTED=y +CONFIG_SOC_FLASH_ENC_SUPPORTED=y +CONFIG_SOC_SECURE_BOOT_SUPPORTED=y CONFIG_SOC_ADC_RTC_CTRL_SUPPORTED=y CONFIG_SOC_ADC_DIG_CTRL_SUPPORTED=y CONFIG_SOC_ADC_PERIPH_NUM=2 @@ -140,6 +141,8 @@ CONFIG_SOC_RSA_MAX_BIT_LEN=4096 CONFIG_SOC_AES_SUPPORT_AES_128=y CONFIG_SOC_AES_SUPPORT_AES_192=y CONFIG_SOC_AES_SUPPORT_AES_256=y +CONFIG_SOC_SECURE_BOOT_V1=y +CONFIG_SOC_EFUSE_SECURE_BOOT_KEY_DIGESTS=y CONFIG_SOC_FLASH_ENCRYPTED_XTS_AES_BLOCK_MAX=32 CONFIG_SOC_PHY_DIG_REGS_MEM_SIZE=21 CONFIG_SOC_PM_SUPPORT_EXT_WAKEUP=y @@ -210,6 +213,7 @@ CONFIG_BOOTLOADER_FLASH_XMC_SUPPORT=y # # Security features # +CONFIG_SECURE_BOOT_V1_SUPPORTED=y # CONFIG_SECURE_SIGNED_APPS_NO_SECURE_BOOT is not set # CONFIG_SECURE_BOOT is not set # CONFIG_SECURE_FLASH_ENC_ENABLED is not set @@ -396,6 +400,10 @@ CONFIG_COMPILER_STACK_CHECK_MODE_NONE=y # # CONFIG_APPTRACE_DEST_JTAG is not set CONFIG_APPTRACE_DEST_NONE=y +# CONFIG_APPTRACE_DEST_UART1 is not set +# CONFIG_APPTRACE_DEST_UART2 is not set +CONFIG_APPTRACE_DEST_UART_NONE=y +CONFIG_APPTRACE_UART_TASK_PRIO=1 CONFIG_APPTRACE_LOCK_ENABLE=y # end of Application Level Tracing @@ -581,6 +589,7 @@ CONFIG_SPI_SLAVE_ISR_IN_IRAM=y # GPIO Configuration # # CONFIG_GPIO_ESP32_SUPPORT_SWITCH_SLP_PULL is not set +# CONFIG_GPIO_CTRL_FUNC_IN_IRAM is not set # end of GPIO Configuration # @@ -618,8 +627,8 @@ CONFIG_EFUSE_MAX_BLK_LEN=192 # CONFIG_ESP_TLS_USING_MBEDTLS=y # CONFIG_ESP_TLS_USE_SECURE_ELEMENT is not set -# CONFIG_ESP_TLS_SERVER is not set # CONFIG_ESP_TLS_CLIENT_SESSION_TICKETS is not set +# CONFIG_ESP_TLS_SERVER is not set # CONFIG_ESP_TLS_PSK_VERIFICATION is not set # CONFIG_ESP_TLS_INSECURE is not set # end of ESP-TLS @@ -757,6 +766,12 @@ CONFIG_ESP_SLEEP_RTC_BUS_ISO_WORKAROUND=y # RTC Clock Config # # end of RTC Clock Config + +# +# Peripheral Control +# +# CONFIG_PERIPH_CTRL_FUNC_IN_IRAM is not set +# end of Peripheral Control # end of Hardware Settings # @@ -1253,6 +1268,7 @@ CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_DEFAULT_FULL=y # CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_DEFAULT_CMN is not set # CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_DEFAULT_NONE is not set # CONFIG_MBEDTLS_CUSTOM_CERTIFICATE_BUNDLE is not set +CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_MAX_CERTS=200 # end of Certificate Bundle CONFIG_MBEDTLS_ECP_RESTARTABLE=y @@ -1545,6 +1561,8 @@ CONFIG_WL_SECTOR_SIZE=4096 CONFIG_WIFI_PROV_SCAN_MAX_ENTRIES=16 CONFIG_WIFI_PROV_AUTOSTOP_TIMEOUT=30 # CONFIG_WIFI_PROV_BLE_BONDING is not set +CONFIG_WIFI_PROV_BLE_SEC_CONN=y +CONFIG_WIFI_PROV_BLE_FORCE_ENCRYPTION=y # end of Wi-Fi Provisioning Manager # diff --git a/sdkconfig_feedc0de b/sdkconfig_feedc0de index eac35b2..760a869 100644 --- a/sdkconfig_feedc0de +++ b/sdkconfig_feedc0de @@ -20,7 +20,6 @@ CONFIG_SOC_EMAC_SUPPORTED=y CONFIG_SOC_CPU_CORES_NUM=2 CONFIG_SOC_ULP_SUPPORTED=y CONFIG_SOC_CCOMP_TIMER_SUPPORTED=y -CONFIG_SOC_EFUSE_SECURE_BOOT_KEY_DIGESTS=y CONFIG_SOC_RTC_FAST_MEM_SUPPORTED=y CONFIG_SOC_RTC_SLOW_MEM_SUPPORTED=y CONFIG_SOC_I2S_SUPPORTED=y @@ -30,6 +29,8 @@ CONFIG_SOC_SUPPORT_COEXISTENCE=y CONFIG_SOC_AES_SUPPORTED=y CONFIG_SOC_MPI_SUPPORTED=y CONFIG_SOC_SHA_SUPPORTED=y +CONFIG_SOC_FLASH_ENC_SUPPORTED=y +CONFIG_SOC_SECURE_BOOT_SUPPORTED=y CONFIG_SOC_ADC_RTC_CTRL_SUPPORTED=y CONFIG_SOC_ADC_DIG_CTRL_SUPPORTED=y CONFIG_SOC_ADC_PERIPH_NUM=2 @@ -140,6 +141,8 @@ CONFIG_SOC_RSA_MAX_BIT_LEN=4096 CONFIG_SOC_AES_SUPPORT_AES_128=y CONFIG_SOC_AES_SUPPORT_AES_192=y CONFIG_SOC_AES_SUPPORT_AES_256=y +CONFIG_SOC_SECURE_BOOT_V1=y +CONFIG_SOC_EFUSE_SECURE_BOOT_KEY_DIGESTS=y CONFIG_SOC_FLASH_ENCRYPTED_XTS_AES_BLOCK_MAX=32 CONFIG_SOC_PHY_DIG_REGS_MEM_SIZE=21 CONFIG_SOC_PM_SUPPORT_EXT_WAKEUP=y @@ -210,6 +213,7 @@ CONFIG_BOOTLOADER_FLASH_XMC_SUPPORT=y # # Security features # +CONFIG_SECURE_BOOT_V1_SUPPORTED=y # CONFIG_SECURE_SIGNED_APPS_NO_SECURE_BOOT is not set # CONFIG_SECURE_BOOT is not set # CONFIG_SECURE_FLASH_ENC_ENABLED is not set @@ -396,6 +400,10 @@ CONFIG_COMPILER_STACK_CHECK_MODE_NONE=y # # CONFIG_APPTRACE_DEST_JTAG is not set CONFIG_APPTRACE_DEST_NONE=y +# CONFIG_APPTRACE_DEST_UART1 is not set +# CONFIG_APPTRACE_DEST_UART2 is not set +CONFIG_APPTRACE_DEST_UART_NONE=y +CONFIG_APPTRACE_UART_TASK_PRIO=1 CONFIG_APPTRACE_LOCK_ENABLE=y # end of Application Level Tracing @@ -581,6 +589,7 @@ CONFIG_SPI_SLAVE_ISR_IN_IRAM=y # GPIO Configuration # # CONFIG_GPIO_ESP32_SUPPORT_SWITCH_SLP_PULL is not set +# CONFIG_GPIO_CTRL_FUNC_IN_IRAM is not set # end of GPIO Configuration # @@ -618,8 +627,8 @@ CONFIG_EFUSE_MAX_BLK_LEN=192 # CONFIG_ESP_TLS_USING_MBEDTLS=y # CONFIG_ESP_TLS_USE_SECURE_ELEMENT is not set -# CONFIG_ESP_TLS_SERVER is not set # CONFIG_ESP_TLS_CLIENT_SESSION_TICKETS is not set +# CONFIG_ESP_TLS_SERVER is not set # CONFIG_ESP_TLS_PSK_VERIFICATION is not set # CONFIG_ESP_TLS_INSECURE is not set # end of ESP-TLS @@ -757,6 +766,12 @@ CONFIG_ESP_SLEEP_RTC_BUS_ISO_WORKAROUND=y # RTC Clock Config # # end of RTC Clock Config + +# +# Peripheral Control +# +# CONFIG_PERIPH_CTRL_FUNC_IN_IRAM is not set +# end of Peripheral Control # end of Hardware Settings # @@ -1255,6 +1270,7 @@ CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_DEFAULT_FULL=y # CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_DEFAULT_CMN is not set # CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_DEFAULT_NONE is not set # CONFIG_MBEDTLS_CUSTOM_CERTIFICATE_BUNDLE is not set +CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_MAX_CERTS=200 # end of Certificate Bundle CONFIG_MBEDTLS_ECP_RESTARTABLE=y @@ -1547,6 +1563,8 @@ CONFIG_WL_SECTOR_SIZE=4096 CONFIG_WIFI_PROV_SCAN_MAX_ENTRIES=16 CONFIG_WIFI_PROV_AUTOSTOP_TIMEOUT=30 # CONFIG_WIFI_PROV_BLE_BONDING is not set +CONFIG_WIFI_PROV_BLE_SEC_CONN=y +CONFIG_WIFI_PROV_BLE_FORCE_ENCRYPTION=y # end of Wi-Fi Provisioning Manager # diff --git a/sdkconfig_greyhash b/sdkconfig_greyhash index 8fcdd18..aa62d92 100644 --- a/sdkconfig_greyhash +++ b/sdkconfig_greyhash @@ -20,7 +20,6 @@ CONFIG_SOC_EMAC_SUPPORTED=y CONFIG_SOC_CPU_CORES_NUM=2 CONFIG_SOC_ULP_SUPPORTED=y CONFIG_SOC_CCOMP_TIMER_SUPPORTED=y -CONFIG_SOC_EFUSE_SECURE_BOOT_KEY_DIGESTS=y CONFIG_SOC_RTC_FAST_MEM_SUPPORTED=y CONFIG_SOC_RTC_SLOW_MEM_SUPPORTED=y CONFIG_SOC_I2S_SUPPORTED=y @@ -30,6 +29,8 @@ CONFIG_SOC_SUPPORT_COEXISTENCE=y CONFIG_SOC_AES_SUPPORTED=y CONFIG_SOC_MPI_SUPPORTED=y CONFIG_SOC_SHA_SUPPORTED=y +CONFIG_SOC_FLASH_ENC_SUPPORTED=y +CONFIG_SOC_SECURE_BOOT_SUPPORTED=y CONFIG_SOC_ADC_RTC_CTRL_SUPPORTED=y CONFIG_SOC_ADC_DIG_CTRL_SUPPORTED=y CONFIG_SOC_ADC_PERIPH_NUM=2 @@ -140,6 +141,8 @@ CONFIG_SOC_RSA_MAX_BIT_LEN=4096 CONFIG_SOC_AES_SUPPORT_AES_128=y CONFIG_SOC_AES_SUPPORT_AES_192=y CONFIG_SOC_AES_SUPPORT_AES_256=y +CONFIG_SOC_SECURE_BOOT_V1=y +CONFIG_SOC_EFUSE_SECURE_BOOT_KEY_DIGESTS=y CONFIG_SOC_FLASH_ENCRYPTED_XTS_AES_BLOCK_MAX=32 CONFIG_SOC_PHY_DIG_REGS_MEM_SIZE=21 CONFIG_SOC_PM_SUPPORT_EXT_WAKEUP=y @@ -210,6 +213,7 @@ CONFIG_BOOTLOADER_FLASH_XMC_SUPPORT=y # # Security features # +CONFIG_SECURE_BOOT_V1_SUPPORTED=y # CONFIG_SECURE_SIGNED_APPS_NO_SECURE_BOOT is not set # CONFIG_SECURE_BOOT is not set # CONFIG_SECURE_FLASH_ENC_ENABLED is not set @@ -396,6 +400,10 @@ CONFIG_COMPILER_STACK_CHECK_MODE_NONE=y # # CONFIG_APPTRACE_DEST_JTAG is not set CONFIG_APPTRACE_DEST_NONE=y +# CONFIG_APPTRACE_DEST_UART1 is not set +# CONFIG_APPTRACE_DEST_UART2 is not set +CONFIG_APPTRACE_DEST_UART_NONE=y +CONFIG_APPTRACE_UART_TASK_PRIO=1 CONFIG_APPTRACE_LOCK_ENABLE=y # end of Application Level Tracing @@ -581,6 +589,7 @@ CONFIG_SPI_SLAVE_ISR_IN_IRAM=y # GPIO Configuration # # CONFIG_GPIO_ESP32_SUPPORT_SWITCH_SLP_PULL is not set +# CONFIG_GPIO_CTRL_FUNC_IN_IRAM is not set # end of GPIO Configuration # @@ -618,8 +627,8 @@ CONFIG_EFUSE_MAX_BLK_LEN=192 # CONFIG_ESP_TLS_USING_MBEDTLS=y # CONFIG_ESP_TLS_USE_SECURE_ELEMENT is not set -# CONFIG_ESP_TLS_SERVER is not set # CONFIG_ESP_TLS_CLIENT_SESSION_TICKETS is not set +# CONFIG_ESP_TLS_SERVER is not set # CONFIG_ESP_TLS_PSK_VERIFICATION is not set # CONFIG_ESP_TLS_INSECURE is not set # end of ESP-TLS @@ -757,6 +766,12 @@ CONFIG_ESP_SLEEP_RTC_BUS_ISO_WORKAROUND=y # RTC Clock Config # # end of RTC Clock Config + +# +# Peripheral Control +# +# CONFIG_PERIPH_CTRL_FUNC_IN_IRAM is not set +# end of Peripheral Control # end of Hardware Settings # @@ -1253,6 +1268,7 @@ CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_DEFAULT_FULL=y # CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_DEFAULT_CMN is not set # CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_DEFAULT_NONE is not set # CONFIG_MBEDTLS_CUSTOM_CERTIFICATE_BUNDLE is not set +CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_MAX_CERTS=200 # end of Certificate Bundle CONFIG_MBEDTLS_ECP_RESTARTABLE=y @@ -1545,6 +1561,8 @@ CONFIG_WL_SECTOR_SIZE=4096 CONFIG_WIFI_PROV_SCAN_MAX_ENTRIES=16 CONFIG_WIFI_PROV_AUTOSTOP_TIMEOUT=30 # CONFIG_WIFI_PROV_BLE_BONDING is not set +CONFIG_WIFI_PROV_BLE_SEC_CONN=y +CONFIG_WIFI_PROV_BLE_FORCE_ENCRYPTION=y # end of Wi-Fi Provisioning Manager # diff --git a/sdkconfig_mick b/sdkconfig_mick index 8fcdd18..aa62d92 100644 --- a/sdkconfig_mick +++ b/sdkconfig_mick @@ -20,7 +20,6 @@ CONFIG_SOC_EMAC_SUPPORTED=y CONFIG_SOC_CPU_CORES_NUM=2 CONFIG_SOC_ULP_SUPPORTED=y CONFIG_SOC_CCOMP_TIMER_SUPPORTED=y -CONFIG_SOC_EFUSE_SECURE_BOOT_KEY_DIGESTS=y CONFIG_SOC_RTC_FAST_MEM_SUPPORTED=y CONFIG_SOC_RTC_SLOW_MEM_SUPPORTED=y CONFIG_SOC_I2S_SUPPORTED=y @@ -30,6 +29,8 @@ CONFIG_SOC_SUPPORT_COEXISTENCE=y CONFIG_SOC_AES_SUPPORTED=y CONFIG_SOC_MPI_SUPPORTED=y CONFIG_SOC_SHA_SUPPORTED=y +CONFIG_SOC_FLASH_ENC_SUPPORTED=y +CONFIG_SOC_SECURE_BOOT_SUPPORTED=y CONFIG_SOC_ADC_RTC_CTRL_SUPPORTED=y CONFIG_SOC_ADC_DIG_CTRL_SUPPORTED=y CONFIG_SOC_ADC_PERIPH_NUM=2 @@ -140,6 +141,8 @@ CONFIG_SOC_RSA_MAX_BIT_LEN=4096 CONFIG_SOC_AES_SUPPORT_AES_128=y CONFIG_SOC_AES_SUPPORT_AES_192=y CONFIG_SOC_AES_SUPPORT_AES_256=y +CONFIG_SOC_SECURE_BOOT_V1=y +CONFIG_SOC_EFUSE_SECURE_BOOT_KEY_DIGESTS=y CONFIG_SOC_FLASH_ENCRYPTED_XTS_AES_BLOCK_MAX=32 CONFIG_SOC_PHY_DIG_REGS_MEM_SIZE=21 CONFIG_SOC_PM_SUPPORT_EXT_WAKEUP=y @@ -210,6 +213,7 @@ CONFIG_BOOTLOADER_FLASH_XMC_SUPPORT=y # # Security features # +CONFIG_SECURE_BOOT_V1_SUPPORTED=y # CONFIG_SECURE_SIGNED_APPS_NO_SECURE_BOOT is not set # CONFIG_SECURE_BOOT is not set # CONFIG_SECURE_FLASH_ENC_ENABLED is not set @@ -396,6 +400,10 @@ CONFIG_COMPILER_STACK_CHECK_MODE_NONE=y # # CONFIG_APPTRACE_DEST_JTAG is not set CONFIG_APPTRACE_DEST_NONE=y +# CONFIG_APPTRACE_DEST_UART1 is not set +# CONFIG_APPTRACE_DEST_UART2 is not set +CONFIG_APPTRACE_DEST_UART_NONE=y +CONFIG_APPTRACE_UART_TASK_PRIO=1 CONFIG_APPTRACE_LOCK_ENABLE=y # end of Application Level Tracing @@ -581,6 +589,7 @@ CONFIG_SPI_SLAVE_ISR_IN_IRAM=y # GPIO Configuration # # CONFIG_GPIO_ESP32_SUPPORT_SWITCH_SLP_PULL is not set +# CONFIG_GPIO_CTRL_FUNC_IN_IRAM is not set # end of GPIO Configuration # @@ -618,8 +627,8 @@ CONFIG_EFUSE_MAX_BLK_LEN=192 # CONFIG_ESP_TLS_USING_MBEDTLS=y # CONFIG_ESP_TLS_USE_SECURE_ELEMENT is not set -# CONFIG_ESP_TLS_SERVER is not set # CONFIG_ESP_TLS_CLIENT_SESSION_TICKETS is not set +# CONFIG_ESP_TLS_SERVER is not set # CONFIG_ESP_TLS_PSK_VERIFICATION is not set # CONFIG_ESP_TLS_INSECURE is not set # end of ESP-TLS @@ -757,6 +766,12 @@ CONFIG_ESP_SLEEP_RTC_BUS_ISO_WORKAROUND=y # RTC Clock Config # # end of RTC Clock Config + +# +# Peripheral Control +# +# CONFIG_PERIPH_CTRL_FUNC_IN_IRAM is not set +# end of Peripheral Control # end of Hardware Settings # @@ -1253,6 +1268,7 @@ CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_DEFAULT_FULL=y # CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_DEFAULT_CMN is not set # CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_DEFAULT_NONE is not set # CONFIG_MBEDTLS_CUSTOM_CERTIFICATE_BUNDLE is not set +CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_MAX_CERTS=200 # end of Certificate Bundle CONFIG_MBEDTLS_ECP_RESTARTABLE=y @@ -1545,6 +1561,8 @@ CONFIG_WL_SECTOR_SIZE=4096 CONFIG_WIFI_PROV_SCAN_MAX_ENTRIES=16 CONFIG_WIFI_PROV_AUTOSTOP_TIMEOUT=30 # CONFIG_WIFI_PROV_BLE_BONDING is not set +CONFIG_WIFI_PROV_BLE_SEC_CONN=y +CONFIG_WIFI_PROV_BLE_FORCE_ENCRYPTION=y # end of Wi-Fi Provisioning Manager # diff --git a/sdkconfig_nofeatures b/sdkconfig_nofeatures index be6f315..5e67e26 100644 --- a/sdkconfig_nofeatures +++ b/sdkconfig_nofeatures @@ -20,7 +20,6 @@ CONFIG_SOC_EMAC_SUPPORTED=y CONFIG_SOC_CPU_CORES_NUM=2 CONFIG_SOC_ULP_SUPPORTED=y CONFIG_SOC_CCOMP_TIMER_SUPPORTED=y -CONFIG_SOC_EFUSE_SECURE_BOOT_KEY_DIGESTS=y CONFIG_SOC_RTC_FAST_MEM_SUPPORTED=y CONFIG_SOC_RTC_SLOW_MEM_SUPPORTED=y CONFIG_SOC_I2S_SUPPORTED=y @@ -30,6 +29,8 @@ CONFIG_SOC_SUPPORT_COEXISTENCE=y CONFIG_SOC_AES_SUPPORTED=y CONFIG_SOC_MPI_SUPPORTED=y CONFIG_SOC_SHA_SUPPORTED=y +CONFIG_SOC_FLASH_ENC_SUPPORTED=y +CONFIG_SOC_SECURE_BOOT_SUPPORTED=y CONFIG_SOC_ADC_RTC_CTRL_SUPPORTED=y CONFIG_SOC_ADC_DIG_CTRL_SUPPORTED=y CONFIG_SOC_ADC_PERIPH_NUM=2 @@ -140,6 +141,8 @@ CONFIG_SOC_RSA_MAX_BIT_LEN=4096 CONFIG_SOC_AES_SUPPORT_AES_128=y CONFIG_SOC_AES_SUPPORT_AES_192=y CONFIG_SOC_AES_SUPPORT_AES_256=y +CONFIG_SOC_SECURE_BOOT_V1=y +CONFIG_SOC_EFUSE_SECURE_BOOT_KEY_DIGESTS=y CONFIG_SOC_FLASH_ENCRYPTED_XTS_AES_BLOCK_MAX=32 CONFIG_SOC_PHY_DIG_REGS_MEM_SIZE=21 CONFIG_SOC_PM_SUPPORT_EXT_WAKEUP=y @@ -210,6 +213,7 @@ CONFIG_BOOTLOADER_FLASH_XMC_SUPPORT=y # # Security features # +CONFIG_SECURE_BOOT_V1_SUPPORTED=y # CONFIG_SECURE_SIGNED_APPS_NO_SECURE_BOOT is not set # CONFIG_SECURE_BOOT is not set # CONFIG_SECURE_FLASH_ENC_ENABLED is not set @@ -396,6 +400,10 @@ CONFIG_COMPILER_STACK_CHECK_MODE_NONE=y # # CONFIG_APPTRACE_DEST_JTAG is not set CONFIG_APPTRACE_DEST_NONE=y +# CONFIG_APPTRACE_DEST_UART1 is not set +# CONFIG_APPTRACE_DEST_UART2 is not set +CONFIG_APPTRACE_DEST_UART_NONE=y +CONFIG_APPTRACE_UART_TASK_PRIO=1 CONFIG_APPTRACE_LOCK_ENABLE=y # end of Application Level Tracing @@ -581,6 +589,7 @@ CONFIG_SPI_SLAVE_ISR_IN_IRAM=y # GPIO Configuration # # CONFIG_GPIO_ESP32_SUPPORT_SWITCH_SLP_PULL is not set +# CONFIG_GPIO_CTRL_FUNC_IN_IRAM is not set # end of GPIO Configuration # @@ -618,8 +627,8 @@ CONFIG_EFUSE_MAX_BLK_LEN=192 # CONFIG_ESP_TLS_USING_MBEDTLS=y # CONFIG_ESP_TLS_USE_SECURE_ELEMENT is not set -# CONFIG_ESP_TLS_SERVER is not set # CONFIG_ESP_TLS_CLIENT_SESSION_TICKETS is not set +# CONFIG_ESP_TLS_SERVER is not set # CONFIG_ESP_TLS_PSK_VERIFICATION is not set # CONFIG_ESP_TLS_INSECURE is not set # end of ESP-TLS @@ -757,6 +766,12 @@ CONFIG_ESP_SLEEP_RTC_BUS_ISO_WORKAROUND=y # RTC Clock Config # # end of RTC Clock Config + +# +# Peripheral Control +# +# CONFIG_PERIPH_CTRL_FUNC_IN_IRAM is not set +# end of Peripheral Control # end of Hardware Settings # @@ -1255,6 +1270,7 @@ CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_DEFAULT_FULL=y # CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_DEFAULT_CMN is not set # CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_DEFAULT_NONE is not set # CONFIG_MBEDTLS_CUSTOM_CERTIFICATE_BUNDLE is not set +CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_MAX_CERTS=200 # end of Certificate Bundle CONFIG_MBEDTLS_ECP_RESTARTABLE=y @@ -1547,6 +1563,8 @@ CONFIG_WL_SECTOR_SIZE=4096 CONFIG_WIFI_PROV_SCAN_MAX_ENTRIES=16 CONFIG_WIFI_PROV_AUTOSTOP_TIMEOUT=30 # CONFIG_WIFI_PROV_BLE_BONDING is not set +CONFIG_WIFI_PROV_BLE_SEC_CONN=y +CONFIG_WIFI_PROV_BLE_FORCE_ENCRYPTION=y # end of Wi-Fi Provisioning Manager # diff --git a/sdkconfig_peter b/sdkconfig_peter index 3504e5a..b514eea 100644 --- a/sdkconfig_peter +++ b/sdkconfig_peter @@ -20,7 +20,6 @@ CONFIG_SOC_EMAC_SUPPORTED=y CONFIG_SOC_CPU_CORES_NUM=2 CONFIG_SOC_ULP_SUPPORTED=y CONFIG_SOC_CCOMP_TIMER_SUPPORTED=y -CONFIG_SOC_EFUSE_SECURE_BOOT_KEY_DIGESTS=y CONFIG_SOC_RTC_FAST_MEM_SUPPORTED=y CONFIG_SOC_RTC_SLOW_MEM_SUPPORTED=y CONFIG_SOC_I2S_SUPPORTED=y @@ -30,6 +29,8 @@ CONFIG_SOC_SUPPORT_COEXISTENCE=y CONFIG_SOC_AES_SUPPORTED=y CONFIG_SOC_MPI_SUPPORTED=y CONFIG_SOC_SHA_SUPPORTED=y +CONFIG_SOC_FLASH_ENC_SUPPORTED=y +CONFIG_SOC_SECURE_BOOT_SUPPORTED=y CONFIG_SOC_ADC_RTC_CTRL_SUPPORTED=y CONFIG_SOC_ADC_DIG_CTRL_SUPPORTED=y CONFIG_SOC_ADC_PERIPH_NUM=2 @@ -140,6 +141,8 @@ CONFIG_SOC_RSA_MAX_BIT_LEN=4096 CONFIG_SOC_AES_SUPPORT_AES_128=y CONFIG_SOC_AES_SUPPORT_AES_192=y CONFIG_SOC_AES_SUPPORT_AES_256=y +CONFIG_SOC_SECURE_BOOT_V1=y +CONFIG_SOC_EFUSE_SECURE_BOOT_KEY_DIGESTS=y CONFIG_SOC_FLASH_ENCRYPTED_XTS_AES_BLOCK_MAX=32 CONFIG_SOC_PHY_DIG_REGS_MEM_SIZE=21 CONFIG_SOC_PM_SUPPORT_EXT_WAKEUP=y @@ -210,6 +213,7 @@ CONFIG_BOOTLOADER_FLASH_XMC_SUPPORT=y # # Security features # +CONFIG_SECURE_BOOT_V1_SUPPORTED=y # CONFIG_SECURE_SIGNED_APPS_NO_SECURE_BOOT is not set # CONFIG_SECURE_BOOT is not set # CONFIG_SECURE_FLASH_ENC_ENABLED is not set @@ -396,6 +400,10 @@ CONFIG_COMPILER_STACK_CHECK_MODE_NONE=y # # CONFIG_APPTRACE_DEST_JTAG is not set CONFIG_APPTRACE_DEST_NONE=y +# CONFIG_APPTRACE_DEST_UART1 is not set +# CONFIG_APPTRACE_DEST_UART2 is not set +CONFIG_APPTRACE_DEST_UART_NONE=y +CONFIG_APPTRACE_UART_TASK_PRIO=1 CONFIG_APPTRACE_LOCK_ENABLE=y # end of Application Level Tracing @@ -581,6 +589,7 @@ CONFIG_SPI_SLAVE_ISR_IN_IRAM=y # GPIO Configuration # # CONFIG_GPIO_ESP32_SUPPORT_SWITCH_SLP_PULL is not set +# CONFIG_GPIO_CTRL_FUNC_IN_IRAM is not set # end of GPIO Configuration # @@ -618,8 +627,8 @@ CONFIG_EFUSE_MAX_BLK_LEN=192 # CONFIG_ESP_TLS_USING_MBEDTLS=y # CONFIG_ESP_TLS_USE_SECURE_ELEMENT is not set -# CONFIG_ESP_TLS_SERVER is not set # CONFIG_ESP_TLS_CLIENT_SESSION_TICKETS is not set +# CONFIG_ESP_TLS_SERVER is not set # CONFIG_ESP_TLS_PSK_VERIFICATION is not set # CONFIG_ESP_TLS_INSECURE is not set # end of ESP-TLS @@ -757,6 +766,12 @@ CONFIG_ESP_SLEEP_RTC_BUS_ISO_WORKAROUND=y # RTC Clock Config # # end of RTC Clock Config + +# +# Peripheral Control +# +# CONFIG_PERIPH_CTRL_FUNC_IN_IRAM is not set +# end of Peripheral Control # end of Hardware Settings # @@ -1253,6 +1268,7 @@ CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_DEFAULT_FULL=y # CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_DEFAULT_CMN is not set # CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_DEFAULT_NONE is not set # CONFIG_MBEDTLS_CUSTOM_CERTIFICATE_BUNDLE is not set +CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_MAX_CERTS=200 # end of Certificate Bundle CONFIG_MBEDTLS_ECP_RESTARTABLE=y @@ -1545,6 +1561,8 @@ CONFIG_WL_SECTOR_SIZE=4096 CONFIG_WIFI_PROV_SCAN_MAX_ENTRIES=16 CONFIG_WIFI_PROV_AUTOSTOP_TIMEOUT=30 # CONFIG_WIFI_PROV_BLE_BONDING is not set +CONFIG_WIFI_PROV_BLE_SEC_CONN=y +CONFIG_WIFI_PROV_BLE_FORCE_ENCRYPTION=y # end of Wi-Fi Provisioning Manager # diff --git a/sdkconfig_seatbot b/sdkconfig_seatbot index 3504e5a..b514eea 100644 --- a/sdkconfig_seatbot +++ b/sdkconfig_seatbot @@ -20,7 +20,6 @@ CONFIG_SOC_EMAC_SUPPORTED=y CONFIG_SOC_CPU_CORES_NUM=2 CONFIG_SOC_ULP_SUPPORTED=y CONFIG_SOC_CCOMP_TIMER_SUPPORTED=y -CONFIG_SOC_EFUSE_SECURE_BOOT_KEY_DIGESTS=y CONFIG_SOC_RTC_FAST_MEM_SUPPORTED=y CONFIG_SOC_RTC_SLOW_MEM_SUPPORTED=y CONFIG_SOC_I2S_SUPPORTED=y @@ -30,6 +29,8 @@ CONFIG_SOC_SUPPORT_COEXISTENCE=y CONFIG_SOC_AES_SUPPORTED=y CONFIG_SOC_MPI_SUPPORTED=y CONFIG_SOC_SHA_SUPPORTED=y +CONFIG_SOC_FLASH_ENC_SUPPORTED=y +CONFIG_SOC_SECURE_BOOT_SUPPORTED=y CONFIG_SOC_ADC_RTC_CTRL_SUPPORTED=y CONFIG_SOC_ADC_DIG_CTRL_SUPPORTED=y CONFIG_SOC_ADC_PERIPH_NUM=2 @@ -140,6 +141,8 @@ CONFIG_SOC_RSA_MAX_BIT_LEN=4096 CONFIG_SOC_AES_SUPPORT_AES_128=y CONFIG_SOC_AES_SUPPORT_AES_192=y CONFIG_SOC_AES_SUPPORT_AES_256=y +CONFIG_SOC_SECURE_BOOT_V1=y +CONFIG_SOC_EFUSE_SECURE_BOOT_KEY_DIGESTS=y CONFIG_SOC_FLASH_ENCRYPTED_XTS_AES_BLOCK_MAX=32 CONFIG_SOC_PHY_DIG_REGS_MEM_SIZE=21 CONFIG_SOC_PM_SUPPORT_EXT_WAKEUP=y @@ -210,6 +213,7 @@ CONFIG_BOOTLOADER_FLASH_XMC_SUPPORT=y # # Security features # +CONFIG_SECURE_BOOT_V1_SUPPORTED=y # CONFIG_SECURE_SIGNED_APPS_NO_SECURE_BOOT is not set # CONFIG_SECURE_BOOT is not set # CONFIG_SECURE_FLASH_ENC_ENABLED is not set @@ -396,6 +400,10 @@ CONFIG_COMPILER_STACK_CHECK_MODE_NONE=y # # CONFIG_APPTRACE_DEST_JTAG is not set CONFIG_APPTRACE_DEST_NONE=y +# CONFIG_APPTRACE_DEST_UART1 is not set +# CONFIG_APPTRACE_DEST_UART2 is not set +CONFIG_APPTRACE_DEST_UART_NONE=y +CONFIG_APPTRACE_UART_TASK_PRIO=1 CONFIG_APPTRACE_LOCK_ENABLE=y # end of Application Level Tracing @@ -581,6 +589,7 @@ CONFIG_SPI_SLAVE_ISR_IN_IRAM=y # GPIO Configuration # # CONFIG_GPIO_ESP32_SUPPORT_SWITCH_SLP_PULL is not set +# CONFIG_GPIO_CTRL_FUNC_IN_IRAM is not set # end of GPIO Configuration # @@ -618,8 +627,8 @@ CONFIG_EFUSE_MAX_BLK_LEN=192 # CONFIG_ESP_TLS_USING_MBEDTLS=y # CONFIG_ESP_TLS_USE_SECURE_ELEMENT is not set -# CONFIG_ESP_TLS_SERVER is not set # CONFIG_ESP_TLS_CLIENT_SESSION_TICKETS is not set +# CONFIG_ESP_TLS_SERVER is not set # CONFIG_ESP_TLS_PSK_VERIFICATION is not set # CONFIG_ESP_TLS_INSECURE is not set # end of ESP-TLS @@ -757,6 +766,12 @@ CONFIG_ESP_SLEEP_RTC_BUS_ISO_WORKAROUND=y # RTC Clock Config # # end of RTC Clock Config + +# +# Peripheral Control +# +# CONFIG_PERIPH_CTRL_FUNC_IN_IRAM is not set +# end of Peripheral Control # end of Hardware Settings # @@ -1253,6 +1268,7 @@ CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_DEFAULT_FULL=y # CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_DEFAULT_CMN is not set # CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_DEFAULT_NONE is not set # CONFIG_MBEDTLS_CUSTOM_CERTIFICATE_BUNDLE is not set +CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_MAX_CERTS=200 # end of Certificate Bundle CONFIG_MBEDTLS_ECP_RESTARTABLE=y @@ -1545,6 +1561,8 @@ CONFIG_WL_SECTOR_SIZE=4096 CONFIG_WIFI_PROV_SCAN_MAX_ENTRIES=16 CONFIG_WIFI_PROV_AUTOSTOP_TIMEOUT=30 # CONFIG_WIFI_PROV_BLE_BONDING is not set +CONFIG_WIFI_PROV_BLE_SEC_CONN=y +CONFIG_WIFI_PROV_BLE_FORCE_ENCRYPTION=y # end of Wi-Fi Provisioning Manager #