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 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
struct AutoBluetoothModeAccessor : public RefAccessorSaveSettings<BluetoothMode> { BluetoothMode &getRef() const override { return settings.bluetoothSettings.autoBluetoothMode; } };

View File

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

View File

@ -33,7 +33,7 @@ class StationWifiSettingsMenu :
public:
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_WIFISCANRESULTS>, SwitchScreenAction<WifiScanMenu>, StaticMenuItemIcon<&bobbyicons::scan>>>();
constructMenuItem<makeComponent<MenuItem, WifiStatusText, StaticFont<2>, DisabledColor, DummyAction>>();

View File

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

View File

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

View File

@ -7,6 +7,7 @@ constexpr char TEXT_BACK[] = "Back";
//AccessPointWifiSettingsMenu
constexpr char TEXT_ACCESSPOINTWIFISETTINGS[] = "Access Point WiFi settings";
constexpr char TEXT_WIFIAPENABLED[] = "AP enabled";
//constexpr char TEXT_BACK[] = "Back";
#ifdef TEXTS_PLUGIN
@ -151,7 +152,7 @@ constexpr char TEXT_CANRECEIVETIMEOUT[] = "CanReceiveTimeout";
//StationWifiSettingsMenu
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_WIFISCANRESULTS[] = "WiFi scan results";
//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()
{
if (!settings.wifiSettings.wifiEnabled)
if (!settings.wifiSettings.wifiStaEnabled)
return std::nullopt;
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()
{
if (!settings.wifiSettings.wifiApEnabled)
return std::nullopt;
return wifi_stack::ap_config {
.hostname = deviceName,
.ssid = deviceName,