mirror of
https://github.com/MrUnknownDE/OpenIris-ESPIDF.git
synced 2026-05-04 13:16:05 +02:00
Refactor wireless command error handling and update device mode terminology in setup tool
This commit is contained in:
@@ -1,11 +1,15 @@
|
|||||||
#include "scan_commands.hpp"
|
#include "scan_commands.hpp"
|
||||||
|
#include "sdkconfig.h"
|
||||||
|
|
||||||
CommandResult scanNetworksCommand(std::shared_ptr<DependencyRegistry> registry)
|
CommandResult scanNetworksCommand(std::shared_ptr<DependencyRegistry> registry)
|
||||||
{
|
{
|
||||||
|
#if !CONFIG_GENERAL_ENABLE_WIRELESS
|
||||||
|
return CommandResult::getErrorResult("Not supported by current firmware");
|
||||||
|
#endif
|
||||||
auto wifiManager = registry->resolve<WiFiManager>(DependencyType::wifi_manager);
|
auto wifiManager = registry->resolve<WiFiManager>(DependencyType::wifi_manager);
|
||||||
if (!wifiManager)
|
if (!wifiManager)
|
||||||
{
|
{
|
||||||
return CommandResult::getErrorResult("WiFiManager not available");
|
return CommandResult::getErrorResult("Not supported by current firmware");
|
||||||
}
|
}
|
||||||
|
|
||||||
auto networks = wifiManager->ScanNetworks();
|
auto networks = wifiManager->ScanNetworks();
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
#include "wifi_commands.hpp"
|
#include "wifi_commands.hpp"
|
||||||
#include "esp_netif.h"
|
#include "esp_netif.h"
|
||||||
|
#include "sdkconfig.h"
|
||||||
|
|
||||||
std::optional<WifiPayload> parseSetWiFiCommandPayload(std::string_view jsonPayload)
|
std::optional<WifiPayload> parseSetWiFiCommandPayload(std::string_view jsonPayload)
|
||||||
{
|
{
|
||||||
@@ -143,6 +144,9 @@ std::optional<UpdateAPWiFiPayload> parseUpdateAPWiFiCommandPayload(const std::st
|
|||||||
|
|
||||||
CommandResult setWiFiCommand(std::shared_ptr<DependencyRegistry> registry, std::string_view jsonPayload)
|
CommandResult setWiFiCommand(std::shared_ptr<DependencyRegistry> registry, std::string_view jsonPayload)
|
||||||
{
|
{
|
||||||
|
#if !CONFIG_GENERAL_ENABLE_WIRELESS
|
||||||
|
return CommandResult::getErrorResult("Not supported by current firmware");
|
||||||
|
#endif
|
||||||
const auto payload = parseSetWiFiCommandPayload(jsonPayload);
|
const auto payload = parseSetWiFiCommandPayload(jsonPayload);
|
||||||
|
|
||||||
if (!payload.has_value())
|
if (!payload.has_value())
|
||||||
@@ -164,6 +168,9 @@ CommandResult setWiFiCommand(std::shared_ptr<DependencyRegistry> registry, std::
|
|||||||
|
|
||||||
CommandResult deleteWiFiCommand(std::shared_ptr<DependencyRegistry> registry, std::string_view jsonPayload)
|
CommandResult deleteWiFiCommand(std::shared_ptr<DependencyRegistry> registry, std::string_view jsonPayload)
|
||||||
{
|
{
|
||||||
|
#if !CONFIG_GENERAL_ENABLE_WIRELESS
|
||||||
|
return CommandResult::getErrorResult("Not supported by current firmware");
|
||||||
|
#endif
|
||||||
const auto payload = parseDeleteWifiCommandPayload(jsonPayload);
|
const auto payload = parseDeleteWifiCommandPayload(jsonPayload);
|
||||||
if (!payload.has_value())
|
if (!payload.has_value())
|
||||||
return CommandResult::getErrorResult("Invalid payload");
|
return CommandResult::getErrorResult("Invalid payload");
|
||||||
@@ -176,6 +183,9 @@ CommandResult deleteWiFiCommand(std::shared_ptr<DependencyRegistry> registry, st
|
|||||||
|
|
||||||
CommandResult updateWiFiCommand(std::shared_ptr<DependencyRegistry> registry, std::string_view jsonPayload)
|
CommandResult updateWiFiCommand(std::shared_ptr<DependencyRegistry> registry, std::string_view jsonPayload)
|
||||||
{
|
{
|
||||||
|
#if !CONFIG_GENERAL_ENABLE_WIRELESS
|
||||||
|
return CommandResult::getErrorResult("Not supported by current firmware");
|
||||||
|
#endif
|
||||||
const auto payload = parseUpdateWifiCommandPayload(jsonPayload);
|
const auto payload = parseUpdateWifiCommandPayload(jsonPayload);
|
||||||
if (!payload.has_value())
|
if (!payload.has_value())
|
||||||
{
|
{
|
||||||
@@ -207,6 +217,9 @@ CommandResult updateWiFiCommand(std::shared_ptr<DependencyRegistry> registry, st
|
|||||||
|
|
||||||
CommandResult updateAPWiFiCommand(std::shared_ptr<DependencyRegistry> registry, std::string_view jsonPayload)
|
CommandResult updateAPWiFiCommand(std::shared_ptr<DependencyRegistry> registry, std::string_view jsonPayload)
|
||||||
{
|
{
|
||||||
|
#if !CONFIG_GENERAL_ENABLE_WIRELESS
|
||||||
|
return CommandResult::getErrorResult("Not supported by current firmware");
|
||||||
|
#endif
|
||||||
const auto payload = parseUpdateAPWiFiCommandPayload(jsonPayload);
|
const auto payload = parseUpdateAPWiFiCommandPayload(jsonPayload);
|
||||||
|
|
||||||
if (!payload.has_value())
|
if (!payload.has_value())
|
||||||
@@ -226,7 +239,13 @@ CommandResult updateAPWiFiCommand(std::shared_ptr<DependencyRegistry> registry,
|
|||||||
}
|
}
|
||||||
|
|
||||||
CommandResult getWiFiStatusCommand(std::shared_ptr<DependencyRegistry> registry) {
|
CommandResult getWiFiStatusCommand(std::shared_ptr<DependencyRegistry> registry) {
|
||||||
|
#if !CONFIG_GENERAL_ENABLE_WIRELESS
|
||||||
|
return CommandResult::getErrorResult("Not supported by current firmware");
|
||||||
|
#endif
|
||||||
auto wifiManager = registry->resolve<WiFiManager>(DependencyType::wifi_manager);
|
auto wifiManager = registry->resolve<WiFiManager>(DependencyType::wifi_manager);
|
||||||
|
if (!wifiManager) {
|
||||||
|
return CommandResult::getErrorResult("Not supported by current firmware");
|
||||||
|
}
|
||||||
auto projectConfig = registry->resolve<ProjectConfig>(DependencyType::project_config);
|
auto projectConfig = registry->resolve<ProjectConfig>(DependencyType::project_config);
|
||||||
|
|
||||||
// Get current WiFi state
|
// Get current WiFi state
|
||||||
@@ -287,7 +306,13 @@ CommandResult getWiFiStatusCommand(std::shared_ptr<DependencyRegistry> registry)
|
|||||||
}
|
}
|
||||||
|
|
||||||
CommandResult connectWiFiCommand(std::shared_ptr<DependencyRegistry> registry) {
|
CommandResult connectWiFiCommand(std::shared_ptr<DependencyRegistry> registry) {
|
||||||
|
#if !CONFIG_GENERAL_ENABLE_WIRELESS
|
||||||
|
return CommandResult::getErrorResult("Not supported by current firmware");
|
||||||
|
#endif
|
||||||
auto wifiManager = registry->resolve<WiFiManager>(DependencyType::wifi_manager);
|
auto wifiManager = registry->resolve<WiFiManager>(DependencyType::wifi_manager);
|
||||||
|
if (!wifiManager) {
|
||||||
|
return CommandResult::getErrorResult("Not supported by current firmware");
|
||||||
|
}
|
||||||
auto projectConfig = registry->resolve<ProjectConfig>(DependencyType::project_config);
|
auto projectConfig = registry->resolve<ProjectConfig>(DependencyType::project_config);
|
||||||
|
|
||||||
auto networks = projectConfig->getWifiConfigs();
|
auto networks = projectConfig->getWifiConfigs();
|
||||||
|
|||||||
@@ -68,3 +68,4 @@ CONFIG_MONITORING_LED_SHUNT_MILLIOHM=22000
|
|||||||
CONFIG_MONITORING_LED_SAMPLES=10
|
CONFIG_MONITORING_LED_SAMPLES=10
|
||||||
CONFIG_MONITORING_LED_INTERVAL_MS=500
|
CONFIG_MONITORING_LED_INTERVAL_MS=500
|
||||||
CONFIG_GENERAL_WHO_AM_I="facefocusvr_eye"
|
CONFIG_GENERAL_WHO_AM_I="facefocusvr_eye"
|
||||||
|
# CONFIG_GENERAL_ENABLE_WIRELESS is not set
|
||||||
@@ -68,3 +68,4 @@ CONFIG_MONITORING_LED_SHUNT_MILLIOHM=22000
|
|||||||
CONFIG_MONITORING_LED_SAMPLES=10
|
CONFIG_MONITORING_LED_SAMPLES=10
|
||||||
CONFIG_MONITORING_LED_INTERVAL_MS=500
|
CONFIG_MONITORING_LED_INTERVAL_MS=500
|
||||||
CONFIG_GENERAL_WHO_AM_I="facefocusvr_face"
|
CONFIG_GENERAL_WHO_AM_I="facefocusvr_face"
|
||||||
|
# CONFIG_GENERAL_ENABLE_WIRELESS is not set
|
||||||
@@ -55,3 +55,4 @@ CONFIG_GENERAL_INCLUDE_UVC_MODE=y
|
|||||||
# CONFIG_START_IN_UVC_MODE is not set
|
# CONFIG_START_IN_UVC_MODE is not set
|
||||||
# CONFIG_MONITORING_LED_CURRENT is not set
|
# CONFIG_MONITORING_LED_CURRENT is not set
|
||||||
CONFIG_GENERAL_WHO_AM_I="project_babble"
|
CONFIG_GENERAL_WHO_AM_I="project_babble"
|
||||||
|
CONFIG_GENERAL_ENABLE_WIRELESS=y
|
||||||
@@ -60,3 +60,4 @@ CONFIG_GENERAL_INCLUDE_UVC_MODE=y
|
|||||||
# CONFIG_START_IN_UVC_MODE is not set
|
# CONFIG_START_IN_UVC_MODE is not set
|
||||||
# CONFIG_MONITORING_LED_CURRENT is not set
|
# CONFIG_MONITORING_LED_CURRENT is not set
|
||||||
CONFIG_GENERAL_WHO_AM_I="xiao_esp32s3"
|
CONFIG_GENERAL_WHO_AM_I="xiao_esp32s3"
|
||||||
|
CONFIG_GENERAL_ENABLE_WIRELESS=y
|
||||||
@@ -1204,7 +1204,7 @@ def main():
|
|||||||
print(f"{str(2):>2} 🌐 Configure MDNS")
|
print(f"{str(2):>2} 🌐 Configure MDNS")
|
||||||
print(f"{str(3):>2} 💻 Configure UVC Name")
|
print(f"{str(3):>2} 💻 Configure UVC Name")
|
||||||
print(f"{str(4):>2} 🚀 Start streaming mode")
|
print(f"{str(4):>2} 🚀 Start streaming mode")
|
||||||
print(f"{str(5):>2} 🔄 Switch device mode (WiFi/UVC/Auto)")
|
print(f"{str(5):>2} 🔄 Switch device mode (WiFi/UVC/Setup)")
|
||||||
print(f"{str(6):>2} 💡 Update PWM Duty Cycle")
|
print(f"{str(6):>2} 💡 Update PWM Duty Cycle")
|
||||||
print(f"{str(7):>2} 📖 Monitor logs")
|
print(f"{str(7):>2} 📖 Monitor logs")
|
||||||
print(f"{str(8):>2} 🧩 Get settings summary")
|
print(f"{str(8):>2} 🧩 Get settings summary")
|
||||||
|
|||||||
Reference in New Issue
Block a user