Merge pull request #61 from bobbycar-graz/softap-improvements

softAp improvements
This commit is contained in:
2020-06-07 01:02:11 +02:00
committed by GitHub
7 changed files with 93 additions and 14 deletions

View File

@ -82,6 +82,7 @@ build_flags =
${peters_platine.build_flags}
${default_limits.build_flags}
-DDEVICE_PREFIX=bobbyquad
-DAP_PASSWORD=Passwort_123
-DFEATURE_WEBSERVER
-DFEATURE_DPAD_3WIRESW
-DPINS_DPAD_3WIRESW_OUT=0
@ -141,6 +142,7 @@ build_flags =
${peters_platine.build_flags}
${default_limits.build_flags}
-DDEVICE_PREFIX=bobbycar
-DAP_PASSWORD=Passwort_123
-DFEATURE_WEBSERVER
-DDEFAULT_GASMIN=400
-DDEFAULT_GASMAX=2000
@ -197,6 +199,7 @@ build_flags =
${peters_platine.build_flags}
${default_limits.build_flags}
-DDEVICE_PREFIX=bobbyquad
-DAP_PASSWORD=Passwort_123
-DFEATURE_WEBSERVER
-DFEATURE_DPAD
-DPINS_DPAD_UP=32
@ -224,9 +227,10 @@ upload_speed = 921600
build_flags =
${common_env_data.build_flags}
-DDEVICE_PREFIX=bobbyquad
-DFEATURE_WEBSERVER
${default_limits.build_flags}
-DDEVICE_PREFIX=bobbyquad
-DAP_PASSWORD=Passwort_123
-DFEATURE_WEBSERVER
-DRPI_DISPLAY_TYPE
-DILI9486_DRIVER
; TODO: TFT_MISO (touch MISO?)
@ -261,6 +265,7 @@ build_flags =
${peters_platine_reversed.build_flags}
${default_limits.build_flags}
-DDEVICE_PREFIX=bobbycar
-DAP_PASSWORD=Passwort_123
-DFEATURE_WEBSERVER
-DDEFAULT_GASMIN=1000
-DDEFAULT_GASMAX=4000

View File

@ -0,0 +1,23 @@
#pragma once
#include <HardwareSerial.h>
#include <WiFi.h>
#include "actioninterface.h"
#include "globals.h"
#include "utils.h"
namespace {
class WifiSoftApAction : public virtual ActionInterface
{
public:
void triggered() override
{
if (!WiFi.softAP(deviceName, STRING(AP_PASSWORD)))
{
Serial.println("Could not softAP WiFi");
// TODO: better error handling
}
}
};
}

View File

@ -0,0 +1,21 @@
#pragma once
#include <HardwareSerial.h>
#include <WiFi.h>
#include "actioninterface.h"
namespace {
class WifiSoftApDisconnectAction : public virtual ActionInterface
{
public:
void triggered() override
{
if (!WiFi.softAPdisconnect())
{
Serial.println("Could not softAPdisconnect WiFi");
// TODO: better error handling
}
}
};
}

View File

@ -0,0 +1,21 @@
#pragma once
#include <HardwareSerial.h>
#include <WiFi.h>
#include "actioninterface.h"
namespace {
class WifiSoftApDisconnectWifioffAction : public virtual ActionInterface
{
public:
void triggered() override
{
if (!WiFi.softAPdisconnect(true))
{
Serial.println("Could not softAPdisconnect wifioff WiFi");
// TODO: better error handling
}
}
};
}

View File

@ -4,6 +4,9 @@
#include "staticmenudefinition.h"
#include "menuitem.h"
#include "actions/dummyaction.h"
#include "actions/wifisoftapaction.h"
#include "actions/wifisoftapdisconnectaction.h"
#include "actions/wifisoftapdisconnectwifioffaction.h"
#include "actions/wifisoftapenableipv6action.h"
#include "actions/switchscreenaction.h"
#include "icons/back.h"
@ -20,16 +23,19 @@ class AccessPointWifiSettingsMenu :
public StaticText<TEXT_ACCESSPOINTWIFISETTINGS>,
public BackActionInterface<SwitchScreenAction<WifiSettingsMenu>>,
public StaticMenuDefinition<
makeComponent<MenuItem, WifiSoftApGetStationNumText, StaticFont<2>, DisabledColor, DummyAction>,
makeComponent<MenuItem, WifiSoftApIpText, StaticFont<2>, DisabledColor, DummyAction>,
makeComponent<MenuItem, WifiSoftApBroadcastIpText, StaticFont<2>, DisabledColor, DummyAction>,
makeComponent<MenuItem, WifiSoftApNetworkIdText, StaticFont<2>, DisabledColor, DummyAction>,
makeComponent<MenuItem, WifiSoftApSubnetCidrText, StaticFont<2>, DisabledColor, DummyAction>,
makeComponent<MenuItem, StaticText<TEXT_WIFISOFTAPENABLEIPV6>, WifiSoftApEnableIpV6Action>,
makeComponent<MenuItem, WifiSoftApIpV6Text, StaticFont<2>, DisabledColor, DummyAction>,
makeComponent<MenuItem, WifiSoftApHostnameText, StaticFont<2>, DisabledColor, DummyAction>,
makeComponent<MenuItem, WifiSoftApMacAddressText, StaticFont<2>, DisabledColor, DummyAction>,
makeComponent<MenuItem, StaticText<TEXT_BACK>, SwitchScreenAction<WifiSettingsMenu>, StaticMenuItemIcon<&icons::back>>
makeComponent<MenuItem, StaticText<TEXT_WIFISOFTAP>, WifiSoftApAction>,
makeComponent<MenuItem, StaticText<TEXT_WIFISOFTAPDISCONNECT>, WifiSoftApDisconnectAction>,
makeComponent<MenuItem, StaticText<TEXT_WIFISOFTAPDISCONNECTWIFIOFF>, WifiSoftApDisconnectWifioffAction>,
makeComponent<MenuItem, WifiSoftApGetStationNumText, StaticFont<2>, DisabledColor, DummyAction>,
makeComponent<MenuItem, WifiSoftApIpText, StaticFont<2>, DisabledColor, DummyAction>,
makeComponent<MenuItem, WifiSoftApBroadcastIpText, StaticFont<2>, DisabledColor, DummyAction>,
makeComponent<MenuItem, WifiSoftApNetworkIdText, StaticFont<2>, DisabledColor, DummyAction>,
makeComponent<MenuItem, WifiSoftApSubnetCidrText, StaticFont<2>, DisabledColor, DummyAction>,
makeComponent<MenuItem, StaticText<TEXT_WIFISOFTAPENABLEIPV6>, WifiSoftApEnableIpV6Action>,
makeComponent<MenuItem, WifiSoftApIpV6Text, StaticFont<2>, DisabledColor, DummyAction>,
makeComponent<MenuItem, WifiSoftApHostnameText, StaticFont<2>, DisabledColor, DummyAction>,
makeComponent<MenuItem, WifiSoftApMacAddressText, StaticFont<2>, DisabledColor, DummyAction>,
makeComponent<MenuItem, StaticText<TEXT_BACK>, SwitchScreenAction<WifiSettingsMenu>, StaticMenuItemIcon<&icons::back>>
>
{};
}

View File

@ -18,6 +18,7 @@
#include "ota.h"
#include "presets.h"
#include "statistics.h"
#include "actions/wifisoftapaction.h"
#include "actions/bluetoothbeginaction.h"
#include "actions/bluetoothbeginmasteraction.h"
#include "actions/bluetoothconnectbmsaction.h"
@ -90,8 +91,7 @@ void setup()
if (!WiFi.mode(WIFI_AP_STA))
Serial.println("Could not set mode to WIFI_AP_STA");
if (!WiFi.softAP(deviceName, "Passwort_123"))
Serial.println("Could not softAP");
WifiSoftApAction{}.triggered();
if (!WiFi.begin("realraum", "r3alraum"))
Serial.println("Could not begin WiFi");

View File

@ -7,6 +7,9 @@ constexpr char TEXT_BACK[] = "Back";
//AccessPointWifiSettingsMenu
constexpr char TEXT_ACCESSPOINTWIFISETTINGS[] = "Access Point WiFi settings";
constexpr char TEXT_WIFISOFTAP[] = "softAP()";
constexpr char TEXT_WIFISOFTAPDISCONNECT[] = "softAPdisconnect()";
constexpr char TEXT_WIFISOFTAPDISCONNECTWIFIOFF[] = "softAPdisconnect() wifioff";
constexpr char TEXT_WIFISOFTAPENABLEIPV6[] = "softAPenableIpV6()";
//constexpr char TEXT_BACK[] = "Back";