Enable/Disable AP

This commit is contained in:
2021-11-01 22:45:45 +01:00
parent 7a11708d57
commit eba04b7d4d
8 changed files with 20 additions and 8 deletions

View File

@@ -34,7 +34,8 @@ struct NMotMaxRpmAccessor : public RefAccessorSaveSettings<int16_t> { int16_t &g
struct FieldWeakMaxAccessor : public RefAccessorSaveSettings<int16_t> { int16_t &getRef() const override { return settings.limits.fieldWeakMax; } }; struct FieldWeakMaxAccessor : public RefAccessorSaveSettings<int16_t> { int16_t &getRef() const override { return settings.limits.fieldWeakMax; } };
struct PhaseAdvMaxAccessor : public RefAccessorSaveSettings<int16_t> { int16_t &getRef() const override { return settings.limits.phaseAdvMax; } }; struct PhaseAdvMaxAccessor : public RefAccessorSaveSettings<int16_t> { int16_t &getRef() const override { return settings.limits.phaseAdvMax; } };
struct WifiEnabledAccessor : public RefAccessorSaveSettings<bool> { bool &getRef() const override { return settings.wifiSettings.wifiEnabled; } }; struct WifiStaEnabledAccessor : public RefAccessorSaveSettings<bool> { bool &getRef() const override { return settings.wifiSettings.wifiStaEnabled; } };
struct WifiApEnabledAccessor : public RefAccessorSaveSettings<bool> { bool &getRef() const override { return settings.wifiSettings.wifiApEnabled; } };
#ifdef FEATURE_BLUETOOTH #ifdef FEATURE_BLUETOOTH
struct AutoBluetoothModeAccessor : public RefAccessorSaveSettings<BluetoothMode> { BluetoothMode &getRef() const override { return settings.bluetoothSettings.autoBluetoothMode; } }; struct AutoBluetoothModeAccessor : public RefAccessorSaveSettings<BluetoothMode> { BluetoothMode &getRef() const override { return settings.bluetoothSettings.autoBluetoothMode; } };

View File

@@ -5,8 +5,11 @@
#include "menuitem.h" #include "menuitem.h"
#include "actions/dummyaction.h" #include "actions/dummyaction.h"
#include "actions/switchscreenaction.h" #include "actions/switchscreenaction.h"
#include "actions/toggleboolaction.h"
#include "checkboxicon.h"
#include "icons/back.h" #include "icons/back.h"
#include "wifitexthelpers.h" #include "wifitexthelpers.h"
#include "accessors/settingsaccessors.h"
#include "texts.h" #include "texts.h"
// forward declares // forward declares
@@ -25,6 +28,7 @@ class AccessPointWifiSettingsMenu :
public: public:
AccessPointWifiSettingsMenu() AccessPointWifiSettingsMenu()
{ {
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_WIFIAPENABLED>, ToggleBoolAction, CheckboxIcon, WifiApEnabledAccessor>>();
constructMenuItem<makeComponent<MenuItem, WifiSoftApGetStationNumText, StaticFont<2>, DisabledColor, DummyAction>>(); constructMenuItem<makeComponent<MenuItem, WifiSoftApGetStationNumText, StaticFont<2>, DisabledColor, DummyAction>>();
constructMenuItem<makeComponent<MenuItem, WifiSoftApIpText, StaticFont<2>, DisabledColor, DummyAction>>(); constructMenuItem<makeComponent<MenuItem, WifiSoftApIpText, StaticFont<2>, DisabledColor, DummyAction>>();
constructMenuItem<makeComponent<MenuItem, WifiSoftApBroadcastIpText, StaticFont<2>, DisabledColor, DummyAction>>(); constructMenuItem<makeComponent<MenuItem, WifiSoftApBroadcastIpText, StaticFont<2>, DisabledColor, DummyAction>>();

View File

@@ -33,7 +33,7 @@ class StationWifiSettingsMenu :
public: public:
StationWifiSettingsMenu() StationWifiSettingsMenu()
{ {
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_WIFIENABLED>, ToggleBoolAction, CheckboxIcon, WifiEnabledAccessor>>(); constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_WIFISTAENABLED>, ToggleBoolAction, CheckboxIcon, WifiStaEnabledAccessor>>();
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_WIFITRIGGERSCAN>, WifiScanAction>>(); constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_WIFITRIGGERSCAN>, WifiScanAction>>();
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_WIFISCANRESULTS>, SwitchScreenAction<WifiScanMenu>, StaticMenuItemIcon<&bobbyicons::scan>>>(); constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_WIFISCANRESULTS>, SwitchScreenAction<WifiScanMenu>, StaticMenuItemIcon<&bobbyicons::scan>>>();
constructMenuItem<makeComponent<MenuItem, WifiStatusText, StaticFont<2>, DisabledColor, DummyAction>>(); constructMenuItem<makeComponent<MenuItem, WifiStatusText, StaticFont<2>, DisabledColor, DummyAction>>();

View File

@@ -96,7 +96,8 @@ constexpr Settings::ControllerHardware mosfetsOffControllerHardware {
}; };
constexpr Settings::WifiSettings defaultWifiSettings { constexpr Settings::WifiSettings defaultWifiSettings {
.wifiEnabled = true .wifiStaEnabled = true,
.wifiApEnabled = true
}; };
#ifdef FEATURE_BLUETOOTH #ifdef FEATURE_BLUETOOTH

View File

@@ -46,7 +46,8 @@ struct Settings
} limits; } limits;
struct WifiSettings { struct WifiSettings {
bool wifiEnabled; bool wifiStaEnabled;
bool wifiApEnabled;
} wifiSettings; } wifiSettings;
#ifdef FEATURE_BLUETOOTH #ifdef FEATURE_BLUETOOTH
@@ -216,7 +217,8 @@ void Settings::executeForEveryCommonSetting(T &&callable)
callable("revBeepDur0", buzzer.reverseBeepDuration0); callable("revBeepDur0", buzzer.reverseBeepDuration0);
callable("revBeepDur1", buzzer.reverseBeepDuration1); callable("revBeepDur1", buzzer.reverseBeepDuration1);
callable("wifiEnabled", wifiSettings.wifiEnabled); callable("wifiStaEnabled", wifiSettings.wifiStaEnabled);
callable("wifiApEnabled", wifiSettings.wifiApEnabled);
#ifdef FEATURE_BLUETOOTH #ifdef FEATURE_BLUETOOTH
callable("autoBluetoothMo", bluetoothSettings.autoBluetoothMode); callable("autoBluetoothMo", bluetoothSettings.autoBluetoothMode);

View File

@@ -7,6 +7,7 @@ constexpr char TEXT_BACK[] = "Back";
//AccessPointWifiSettingsMenu //AccessPointWifiSettingsMenu
constexpr char TEXT_ACCESSPOINTWIFISETTINGS[] = "Access Point WiFi settings"; constexpr char TEXT_ACCESSPOINTWIFISETTINGS[] = "Access Point WiFi settings";
constexpr char TEXT_WIFIAPENABLED[] = "AP enabled";
//constexpr char TEXT_BACK[] = "Back"; //constexpr char TEXT_BACK[] = "Back";
#ifdef TEXTS_PLUGIN #ifdef TEXTS_PLUGIN
@@ -151,7 +152,7 @@ constexpr char TEXT_CANRECEIVETIMEOUT[] = "CanReceiveTimeout";
//StationWifiSettingsMenu //StationWifiSettingsMenu
constexpr char TEXT_STATIONWIFISETTINGS[] = "Station WiFi settings"; constexpr char TEXT_STATIONWIFISETTINGS[] = "Station WiFi settings";
constexpr char TEXT_WIFIENABLED[] = "WiFi enabled"; constexpr char TEXT_WIFISTAENABLED[] = "STA enabled";
constexpr char TEXT_WIFITRIGGERSCAN[] = "Trigger Scan"; constexpr char TEXT_WIFITRIGGERSCAN[] = "Trigger Scan";
constexpr char TEXT_WIFISCANRESULTS[] = "WiFi scan results"; constexpr char TEXT_WIFISCANRESULTS[] = "WiFi scan results";
//constexpr char TEXT_BACK[] = "Back"; //constexpr char TEXT_BACK[] = "Back";

View File

@@ -57,7 +57,7 @@ wifi_stack::config wifi_create_config()
std::optional<wifi_stack::sta_config> wifi_create_sta_config() std::optional<wifi_stack::sta_config> wifi_create_sta_config()
{ {
if (!settings.wifiSettings.wifiEnabled) if (!settings.wifiSettings.wifiStaEnabled)
return std::nullopt; return std::nullopt;
return wifi_stack::sta_config { return wifi_stack::sta_config {
@@ -80,6 +80,9 @@ std::optional<wifi_stack::sta_config> wifi_create_sta_config()
std::optional<wifi_stack::ap_config> wifi_create_ap_config() std::optional<wifi_stack::ap_config> wifi_create_ap_config()
{ {
if (!settings.wifiSettings.wifiApEnabled)
return std::nullopt;
return wifi_stack::ap_config { return wifi_stack::ap_config {
.hostname = deviceName, .hostname = deviceName,
.ssid = deviceName, .ssid = deviceName,