Merge pull request #6 from PhosphorosVR/main

Add support for FaceFocusVR boards 
fixup issues with task handling
backport improvements to UVC (big upgrade)
Improve KConfig Menu layout
This commit is contained in:
Lorow
2025-08-13 23:21:29 +02:00
committed by GitHub
19 changed files with 388 additions and 166 deletions
+5 -5
View File
@@ -82,11 +82,11 @@ sdkconfig
### VisualStudioCode ### ### VisualStudioCode ###
.vscode/* .vscode/*
!.vscode/settings.json # !.vscode/settings.json
!.vscode/tasks.json ##!.vscode/tasks.json
!.vscode/launch.json # !.vscode/launch.json
!.vscode/extensions.json # !.vscode/extensions.json
!.vscode/*.code-snippets # !.vscode/*.code-snippets
# Local History for Visual Studio Code # Local History for Visual Studio Code
.history/ .history/
+1 -1
View File
@@ -1,6 +1,6 @@
// source: https://github.com/espressif/esp-iot-solution/blob/4730d91db70df7e6e0a3191d725ab1c5f98ff9ce/examples/usb/device/usb_webcam/bootloader_components/boot_hooks/boot_hooks.c // source: https://github.com/espressif/esp-iot-solution/blob/4730d91db70df7e6e0a3191d725ab1c5f98ff9ce/examples/usb/device/usb_webcam/bootloader_components/boot_hooks/boot_hooks.c
#ifdef CONFIG_WIRED_MODE #ifdef CONFIG_GENERAL_WIRED_MODE
#include "esp_log.h" #include "esp_log.h"
#include "soc/rtc_cntl_struct.h" #include "soc/rtc_cntl_struct.h"
#include "soc/usb_serial_jtag_reg.h" #include "soc/usb_serial_jtag_reg.h"
@@ -18,8 +18,8 @@ void CameraManager::setupCameraPinout()
// 10000000 stable // 10000000 stable
// 16500000 optimal freq on ESP32-CAM (default) // 16500000 optimal freq on ESP32-CAM (default)
// 20000000 max freq on ESP32-CAM // 20000000 max freq on ESP32-CAM
// 24000000 optimal freq on ESP32-S3 // 24000000 optimal freq on ESP32-S3 // 23MHz same fps
int xclk_freq_hz = DEFAULT_XCLK_FREQ_HZ; int xclk_freq_hz = CONFIG_CAMERA_WIFI_XCLK_FREQ;
#if CONFIG_CAMERA_MODULE_ESP_EYE #if CONFIG_CAMERA_MODULE_ESP_EYE
/* IO13, IO14 is designed for JTAG by default, /* IO13, IO14 is designed for JTAG by default,
@@ -48,8 +48,8 @@ void CameraManager::setupCameraPinout()
ESP_LOGI(CAMERA_MANAGER_TAG, "CAM_BOARD"); ESP_LOGI(CAMERA_MANAGER_TAG, "CAM_BOARD");
#endif #endif
#if CONFIG_WIRED_MODE #if CONFIG_GENERAL_WIRED_MODE
xclk_freq_hz = USB_DEFAULT_XCLK_FREQ_HZ; xclk_freq_hz = CONFIG_CAMERA_USB_XCLK_FREQ;
#endif #endif
config = { config = {
@@ -71,8 +71,7 @@ void CameraManager::setupCameraPinout()
.pin_href = CONFIG_HREF_GPIO_NUM, // CAM_PIN_HREF, .pin_href = CONFIG_HREF_GPIO_NUM, // CAM_PIN_HREF,
.pin_pclk = CONFIG_PCLK_GPIO_NUM, // CAM_PIN_PCLK, .pin_pclk = CONFIG_PCLK_GPIO_NUM, // CAM_PIN_PCLK,
// XCLK 20MHz or 10MHz for OV2640 double FPS (Experimental) .xclk_freq_hz = xclk_freq_hz, // Set in config
.xclk_freq_hz = xclk_freq_hz, // 20000000,
.ledc_timer = LEDC_TIMER_0, .ledc_timer = LEDC_TIMER_0,
.ledc_channel = LEDC_CHANNEL_0, .ledc_channel = LEDC_CHANNEL_0,
@@ -80,10 +79,10 @@ void CameraManager::setupCameraPinout()
.pixel_format = PIXFORMAT_JPEG, // YUV422,GRAYSCALE,RGB565,JPEG .pixel_format = PIXFORMAT_JPEG, // YUV422,GRAYSCALE,RGB565,JPEG
.frame_size = FRAMESIZE_240X240, // QQVGA-UXGA, For ESP32, do not use sizes above QVGA when not JPEG. The performance of the ESP32-S series has improved a lot, but JPEG mode always gives better frame rates. .frame_size = FRAMESIZE_240X240, // QQVGA-UXGA, For ESP32, do not use sizes above QVGA when not JPEG. The performance of the ESP32-S series has improved a lot, but JPEG mode always gives better frame rates.
.jpeg_quality = 7, // 0-63, for OV series camera sensors, lower number means higher quality .jpeg_quality = 7, // 0-63, for OV series camera sensors, lower number means higher quality // Below 6 stability problems
.fb_count = 2, // 3 // When jpeg mode is used, if fb_count more than one, the driver will work in continuous mode. .fb_count = 2, // When jpeg mode is used, if fb_count more than one, the driver will work in continuous mode.
.fb_location = CAMERA_FB_IN_PSRAM, // maybe it cannot put them fully in psram? .fb_location = CAMERA_FB_IN_DRAM,
.grab_mode = CAMERA_GRAB_WHEN_EMPTY, // CAMERA_GRAB_LATEST .grab_mode = CAMERA_GRAB_WHEN_EMPTY,
}; };
} }
@@ -95,7 +94,7 @@ void CameraManager::setupBasicResolution()
ESP_LOGE(CAMERA_MANAGER_TAG, "PSRAM not initialized!"); ESP_LOGE(CAMERA_MANAGER_TAG, "PSRAM not initialized!");
ESP_LOGD(CAMERA_MANAGER_TAG, "Setting fb_location to CAMERA_FB_IN_DRAM with lower picture quality"); ESP_LOGD(CAMERA_MANAGER_TAG, "Setting fb_location to CAMERA_FB_IN_DRAM with lower picture quality");
config.fb_location = CAMERA_FB_IN_DRAM; config.fb_location = CAMERA_FB_IN_DRAM;
config.jpeg_quality = 9; config.jpeg_quality = 7;
config.fb_count = 2; config.fb_count = 2;
return; return;
} }
@@ -197,7 +196,7 @@ bool CameraManager::setupCamera()
return false; return false;
} }
#if CONFIG_WIRED_MODE #if CONFIG_GENERAL_WIRED_MODE
const auto temp_sensor = esp_camera_sensor_get(); const auto temp_sensor = esp_camera_sensor_get();
// Thanks to lick_it, we discovered that OV5640 likes to overheat when // Thanks to lick_it, we discovered that OV5640 likes to overheat when
@@ -14,11 +14,7 @@
#include <StateManager.hpp> #include <StateManager.hpp>
#include <ProjectConfig.hpp> #include <ProjectConfig.hpp>
#ifndef DEFAULT_XCLK_FREQ_HZ #define OV5640_XCLK_FREQ_HZ CONFIG_CAMERA_WIFI_XCLK_FREQ
#define DEFAULT_XCLK_FREQ_HZ 16500000
#define USB_DEFAULT_XCLK_FREQ_HZ 20000000
#define OV5640_XCLK_FREQ_HZ DEFAULT_XCLK_FREQ_HZ
#endif
class CameraManager class CameraManager
{ {
+24 -21
View File
@@ -78,32 +78,35 @@ void LEDManager::setup() {
gpio_set_direction(blink_led_pin, GPIO_MODE_OUTPUT); gpio_set_direction(blink_led_pin, GPIO_MODE_OUTPUT);
this->toggleLED(LED_OFF); this->toggleLED(LED_OFF);
#ifdef CONFIG_SUPPORTS_EXTERNAL_LED_CONTROL #ifdef CONFIG_LED_EXTERNAL_CONTROL
ESP_LOGD(LED_MANAGER_TAG, "Setting up illuminator led."); ESP_LOGD(LED_MANAGER_TAG, "Setting up illuminator led.");
const int freq = 5000; const int freq = CONFIG_LED_EXTERNAL_PWM_FREQ;
const auto resolution = LEDC_TIMER_8_BIT; const auto resolution = LEDC_TIMER_8_BIT;
const int dutyCycle = 255; const int dutyCycle = (CONFIG_LED_EXTERNAL_PWM_DUTY_CYCLE * 255) / 100;
ledc_timer_config_t ledc_timer = { ledc_timer_config_t ledc_timer = {
.speed_mode = LEDC_LOW_SPEED_MODE, .speed_mode = LEDC_LOW_SPEED_MODE,
.duty_resolution = resolution, .duty_resolution = resolution,
.timer_num = LEDC_TIMER_0, .timer_num = LEDC_TIMER_0,
.freq_hz = freq, .freq_hz = freq,
.clk_cfg = LEDC_AUTO_CLK}; .clk_cfg = LEDC_AUTO_CLK
};
ESP_ERROR_CHECK(ledc_timer_config(&ledc_timer)); ESP_ERROR_CHECK(ledc_timer_config(&ledc_timer));
ledc_channel_config_t ledc_channel = { ledc_channel_config_t ledc_channel = {
.gpio_num = this->illumninator_led_pin, .gpio_num = this->illumninator_led_pin,
.speed_mode = LEDC_LOW_SPEED_MODE, .speed_mode = LEDC_LOW_SPEED_MODE,
.channel = LEDC_CHANNEL_0, .channel = LEDC_CHANNEL_0,
.intr_type = LEDC_INTR_DISABLE, .intr_type = LEDC_INTR_DISABLE,
.timer_sel = LEDC_TIMER_0, .timer_sel = LEDC_TIMER_0,
.duty = dutyCycle, .duty = dutyCycle,
.hpoint = 0}; .hpoint = 0
};
ESP_ERROR_CHECK(ledc_channel_config(&ledc_channel)); ESP_ERROR_CHECK(ledc_channel_config(&ledc_channel));
#endif #endif
ESP_LOGD(LED_MANAGER_TAG, "Done."); ESP_LOGD(LED_MANAGER_TAG, "Done.");
} }
@@ -6,7 +6,7 @@
#include "freertos/FreeRTOS.h" #include "freertos/FreeRTOS.h"
#include "freertos/queue.h" #include "freertos/queue.h"
#ifdef CONFIG_SUPPORTS_EXTERNAL_LED_CONTROL #ifdef CONFIG_LED_EXTERNAL_CONTROL
#include "driver/ledc.h" #include "driver/ledc.h"
#endif #endif
@@ -80,7 +80,7 @@ struct MDNSConfig_t : BaseConfigModel
{ {
// by default, this will be openiris // by default, this will be openiris
// but we can override it at compile time // but we can override it at compile time
std::string default_hostname = CONFIG_MDNS_HOSTNAME; std::string default_hostname = CONFIG_WIFI_MDNS_HOSTNAME;
if (default_hostname.empty()) if (default_hostname.empty())
{ {
@@ -214,8 +214,8 @@ struct AP_WiFiConfig_t : BaseConfigModel
void load() void load()
{ {
this->ssid = this->pref->getString("apSSID", CONFIG_AP_WIFI_SSID); this->ssid = this->pref->getString("apSSID", CONFIG_WIFI_AP_SSID);
this->password = this->pref->getString("apPassword", CONFIG_AP_WIFI_PASSWORD); this->password = this->pref->getString("apPassword", CONFIG_WIFI_AP_PASSWORD);
}; };
void save() const { void save() const {
+2 -2
View File
@@ -109,9 +109,9 @@ static void UVCStreamHelpers::camera_fb_return_cb(uvc_fb_t *fb, void *cb_ctx)
esp_err_t UVCStreamManager::setup() esp_err_t UVCStreamManager::setup()
{ {
#ifndef CONFIG_WIRED_MODE #ifndef CONFIG_GENERAL_WIRED_MODE
ESP_LOGE(UVC_STREAM_TAG, "The board does not support UVC, please, setup WiFi connection."); ESP_LOGE(UVC_STREAM_TAG, "The board does not support UVC, please, setup WiFi connection.");
return; return ESP_FAIL;
#endif #endif
ESP_LOGI(UVC_STREAM_TAG, "Setting up UVC Stream"); ESP_LOGI(UVC_STREAM_TAG, "Setting up UVC Stream");
@@ -152,8 +152,8 @@ void WiFiManager::SetupAccessPoint()
wifi_config_t ap_wifi_config = { wifi_config_t ap_wifi_config = {
.ap = { .ap = {
.ssid = CONFIG_AP_WIFI_SSID, .ssid = CONFIG_WIFI_AP_SSID,
.password = CONFIG_AP_WIFI_PASSWORD, .password = CONFIG_WIFI_AP_PASSWORD,
.max_connection = 1, .max_connection = 1,
}, },
+1 -1
View File
@@ -53,7 +53,7 @@ dependencies:
idf: idf:
source: source:
type: idf type: idf
version: 5.3.2 version: 5.3.3
direct_dependencies: direct_dependencies:
- espressif/cmake_utilities - espressif/cmake_utilities
- espressif/esp32-camera - espressif/esp32-camera
+84 -36
View File
@@ -1,56 +1,104 @@
menu "OpenIris basic configuration" menu "ENV_Caps"
orsource "$IDF_PATH/examples/common_components/env_caps/$IDF_TARGET/Kconfig.env_caps" orsource "$IDF_PATH/examples/common_components/env_caps/$IDF_TARGET/Kconfig.env_caps"
config BLINK_GPIO endmenu
int "Blink GPIO number"
range ENV_GPIO_RANGE_MIN ENV_GPIO_OUT_RANGE_MAX
default 8
help
GPIO number (IOxx) to blink on and off the LED.
Some GPIOs are used for other purposes (flash connections, etc.) and cannot be used to blink.
config SUPPORTS_EXTERNAL_LED_CONTROL menu "OpenIris: General Configuration"
bool "Tick if your board supports the control of external IR leds (Project Babble)"
default false
help
GPIO number (IOxx) to the pin controlling the LEDs found on Babble boards.
config LED_C_PIN config GENERAL_WIRED_MODE
int "Pin number of the pin controlling the external leds (Project Babble)" bool "Wired mode"
range ENV_GPIO_RANGE_MIN ENV_GPIO_OUT_RANGE_MAX
default 1
help
GPIO number (IOxx) to the pin controlling the LEDs found on Babble boards.
config BLINK_PERIOD
int "Blink period in ms"
range 10 3600000
default 1000
help
Define the blinking period in milliseconds.
config WIRED_MODE
bool "WIred mode"
default false default false
config MDNS_HOSTNAME config GENERAL_UVC_DELAY
string "mDNS name" int "UVC delay (s)"
default 30
range 10 10000
help
Delay in seconds before the ESP reports itself as a UVC device.
endmenu
menu "OpenIris: Camera Configuration"
config CAMERA_USB_XCLK_FREQ
int "USB XCLK frequency (Hz)"
default 10000000 # should be set in individual board config
range 1 24000000
help
USB XCLK frequency in Hz.
config CAMERA_WIFI_XCLK_FREQ
int "WIFI XCLK frequency (Hz)"
default 16500000
range 1 24000000
help
WIFI XCLK frequency in Hz.
endmenu
menu "OpenIris: WiFi Configuration"
config WIFI_MDNS_HOSTNAME
string "mDNS hostname"
default "openiristracker" default "openiristracker"
config WIFI_SSID config WIFI_SSID
string "WiFi network name" string "WiFi network name (SSID)"
default "" default ""
config WIFI_PASSWORD config WIFI_PASSWORD
string "WiFi password" string "WiFi password"
default "" default ""
config AP_WIFI_SSID config WIFI_AP_SSID
string "AP WiFi network name" string "Access Point WiFi network name (SSID)"
default "EyeTrackVR" default "EyeTrackVR"
config AP_WIFI_PASSWORD config WIFI_AP_PASSWORD
string "AP WiFi password" string "Access Point WiFi password"
default "12345678" default "12345678"
endmenu
menu "OpenIris: LED Configuration"
config LED_BLINK_GPIO
int "Blink GPIO number"
range ENV_GPIO_RANGE_MIN ENV_GPIO_OUT_RANGE_MAX
default 8
help
GPIO number (IOxx) used to blink an onboard LED.
Some GPIOs are reserved for other functions (e.g. flash) and cannot be used.
config LED_EXTERNAL_GPIO
int "GPIO pin controlling external LEDs"
range ENV_GPIO_RANGE_MIN ENV_GPIO_OUT_RANGE_MAX
default 1
help
GPIO number connected to the control line of the external IR LEDs.
config LED_EXTERNAL_CONTROL
bool "Board supports external IR LED control"
default false
help
Enable this if your board can control external IR LEDs.
config LED_EXTERNAL_PWM_FREQ
int "External LED PWM frequency (Hz)"
default 5000
range 1 40000
depends on LED_EXTERNAL_CONTROL
help
Frequency of the PWM signal driving the external IR LEDs.
config LED_EXTERNAL_PWM_DUTY_CYCLE
int "External LED PWM duty cycle (%)"
default 50
range 0 100
depends on LED_EXTERNAL_CONTROL
help
Duty cycle of the PWM signal for external IR LEDs, in percent.
0 means always off, 100 means always on.
endmenu endmenu
+29 -10
View File
@@ -21,12 +21,12 @@
#include <SerialManager.hpp> #include <SerialManager.hpp>
#include <RestAPI.hpp> #include <RestAPI.hpp>
#ifdef CONFIG_WIRED_MODE #ifdef CONFIG_GENERAL_WIRED_MODE
#include <UVCStream.hpp> #include <UVCStream.hpp>
#endif #endif
#define BLINK_GPIO (gpio_num_t) CONFIG_BLINK_GPIO #define BLINK_GPIO (gpio_num_t) CONFIG_LED_BLINK_GPIO
#define CONFIG_LED_C_PIN_GPIO (gpio_num_t) CONFIG_LED_C_PIN #define CONFIG_LED_C_PIN_GPIO (gpio_num_t) CONFIG_LED_EXTERNAL_GPIO
esp_timer_handle_t timerHandle; esp_timer_handle_t timerHandle;
QueueHandle_t eventQueue = xQueueCreate(10, sizeof(SystemEvent)); QueueHandle_t eventQueue = xQueueCreate(10, sizeof(SystemEvent));
@@ -48,7 +48,7 @@ StreamServer streamServer(80, stateManager);
auto *restAPI = new RestAPI("http://0.0.0.0:81", commandManager); auto *restAPI = new RestAPI("http://0.0.0.0:81", commandManager);
#ifdef CONFIG_WIRED_MODE #ifdef CONFIG_GENERAL_WIRED_MODE
UVCStreamManager uvcStream; UVCStreamManager uvcStream;
#endif #endif
@@ -78,6 +78,8 @@ void disable_serial_manager_task(TaskHandle_t serialManagerHandle) {
// if we get anything on the serial, we stop the timer and reset it after the commands are done // if we get anything on the serial, we stop the timer and reset it after the commands are done
// this is done to ensure the user has enough time to configure the board if need be // this is done to ensure the user has enough time to configure the board if need be
void start_video_streaming(void *arg) { void start_video_streaming(void *arg) {
TaskHandle_t serialTaskHandle = (TaskHandle_t)arg; // retrieve task handle from arg
// if we're in auto-mode, we can decide which streaming helper to start based on the // if we're in auto-mode, we can decide which streaming helper to start based on the
// presence of Wi-Fi credentials // presence of Wi-Fi credentials
ESP_LOGI("[MAIN]", "Setup window expired, starting streaming services, quitting serial manager."); ESP_LOGI("[MAIN]", "Setup window expired, starting streaming services, quitting serial manager.");
@@ -88,13 +90,21 @@ void start_video_streaming(void *arg) {
ESP_LOGI("[MAIN]", "WiFi setup detected, starting WiFi streaming."); ESP_LOGI("[MAIN]", "WiFi setup detected, starting WiFi streaming.");
streamServer.startStreamServer(); streamServer.startStreamServer();
} else { } else {
#ifdef CONFIG_GENERAL_WIRED_MODE
ESP_LOGI("[MAIN]", "UVC setup detected, starting UVC streaming."); ESP_LOGI("[MAIN]", "UVC setup detected, starting UVC streaming.");
uvcStream.setup(); uvcStream.setup();
#else
ESP_LOGW("[MAIN]", "UVC streaming not supported in this configuration.");
#endif
} }
break; break;
case StreamingMode::UVC: case StreamingMode::UVC:
#ifdef CONFIG_GENERAL_WIRED_MODE
ESP_LOGI("[MAIN]", "Device set to UVC Mode, starting UVC streaming."); ESP_LOGI("[MAIN]", "Device set to UVC Mode, starting UVC streaming.");
uvcStream.setup(); uvcStream.setup();
#else
ESP_LOGW("[MAIN]", "UVC streaming not supported in this configuration.");
#endif
break; break;
case StreamingMode::WIFI: case StreamingMode::WIFI:
ESP_LOGI("[MAIN]", "Device set to Wi-Fi mode, starting WiFi streaming."); ESP_LOGI("[MAIN]", "Device set to Wi-Fi mode, starting WiFi streaming.");
@@ -102,8 +112,9 @@ void start_video_streaming(void *arg) {
break; break;
} }
const auto serialTaskHandle = static_cast<TaskHandle_t>(arg); if (serialTaskHandle != nullptr) {
disable_serial_manager_task(serialTaskHandle); disable_serial_manager_task(serialTaskHandle);
}
} }
esp_timer_handle_t createStartVideoStreamingTimer(void *pvParameter) { esp_timer_handle_t createStartVideoStreamingTimer(void *pvParameter) {
@@ -122,7 +133,12 @@ esp_timer_handle_t createStartVideoStreamingTimer(void *pvParameter) {
} }
extern "C" void app_main(void) { extern "C" void app_main(void) {
TaskHandle_t *serialManagerHandle = nullptr; // --- FIX: Use a real TaskHandle_t variable instead of a pointer ---
// Previously: TaskHandle_t* serialManagerHandle = nullptr;
// This caused xTaskCreate() to never store a valid handle,
// leading to random failures when deleting the task in the timer callback.
TaskHandle_t serialManagerHandle = nullptr;
dependencyRegistry->registerService<ProjectConfig>(DependencyType::project_config, deviceConfig); dependencyRegistry->registerService<ProjectConfig>(DependencyType::project_config, deviceConfig);
dependencyRegistry->registerService<CameraManager>(DependencyType::camera_manager, cameraHandler); dependencyRegistry->registerService<CameraManager>(DependencyType::camera_manager, cameraHandler);
// uvc plan // uvc plan
@@ -197,13 +213,15 @@ extern "C" void app_main(void) {
deviceConfig->load(); deviceConfig->load();
serialManager->setup(); serialManager->setup();
// Pass address of variable so xTaskCreate() stores the actual task handle
xTaskCreate( xTaskCreate(
HandleSerialManagerTask, HandleSerialManagerTask,
"HandleSerialManagerTask", "HandleSerialManagerTask",
1024 * 6, 1024 * 6,
serialManager, serialManager,
1, // we only rely on the serial manager during provisioning, we can run it slower 1, // we only rely on the serial manager during provisioning, we can run it slower
serialManagerHandle); &serialManagerHandle
);
wifiManager.Begin(); wifiManager.Begin();
mdnsManager.start(); mdnsManager.start();
@@ -218,8 +236,9 @@ extern "C" void app_main(void) {
1, // it's the rest API, we only serve commands over it so we don't really need a higher priority 1, // it's the rest API, we only serve commands over it so we don't really need a higher priority
nullptr); nullptr);
timerHandle = createStartVideoStreamingTimer(serialManagerHandle); // Pass the actual TaskHandle_t value into the timer
timerHandle = createStartVideoStreamingTimer((void*)serialManagerHandle);
if (timerHandle != nullptr) { if (timerHandle != nullptr) {
esp_timer_start_once(timerHandle, 30000000); // 30s esp_timer_start_once(timerHandle, CONFIG_GENERAL_UVC_DELAY * 1000000);
} }
} }
+82 -39
View File
@@ -1,6 +1,6 @@
# #
# Automatically generated file. DO NOT EDIT. # Automatically generated file. DO NOT EDIT.
# Espressif IoT Development Framework (ESP-IDF) 5.3.2 Project Configuration # Espressif IoT Development Framework (ESP-IDF) 5.3.3 Project Configuration
# #
CONFIG_SOC_MPU_MIN_REGION_SIZE=0x20000000 CONFIG_SOC_MPU_MIN_REGION_SIZE=0x20000000
CONFIG_SOC_MPU_REGIONS_MAX_NUM=8 CONFIG_SOC_MPU_REGIONS_MAX_NUM=8
@@ -64,6 +64,7 @@ CONFIG_SOC_LIGHT_SLEEP_SUPPORTED=y
CONFIG_SOC_DEEP_SLEEP_SUPPORTED=y CONFIG_SOC_DEEP_SLEEP_SUPPORTED=y
CONFIG_SOC_LP_PERIPH_SHARE_INTERRUPT=y CONFIG_SOC_LP_PERIPH_SHARE_INTERRUPT=y
CONFIG_SOC_PM_SUPPORTED=y CONFIG_SOC_PM_SUPPORTED=y
CONFIG_SOC_SIMD_INSTRUCTION_SUPPORTED=y
CONFIG_SOC_XTAL_SUPPORT_40M=y CONFIG_SOC_XTAL_SUPPORT_40M=y
CONFIG_SOC_APPCPU_HAS_CLOCK_GATING_BUG=y CONFIG_SOC_APPCPU_HAS_CLOCK_GATING_BUG=y
CONFIG_SOC_ADC_RTC_CTRL_SUPPORTED=y CONFIG_SOC_ADC_RTC_CTRL_SUPPORTED=y
@@ -101,6 +102,7 @@ CONFIG_SOC_HP_CPU_HAS_MULTIPLE_CORES=y
CONFIG_SOC_CPU_BREAKPOINTS_NUM=2 CONFIG_SOC_CPU_BREAKPOINTS_NUM=2
CONFIG_SOC_CPU_WATCHPOINTS_NUM=2 CONFIG_SOC_CPU_WATCHPOINTS_NUM=2
CONFIG_SOC_CPU_WATCHPOINT_MAX_REGION_SIZE=64 CONFIG_SOC_CPU_WATCHPOINT_MAX_REGION_SIZE=64
CONFIG_SOC_SIMD_PREFERRED_DATA_ALIGNMENT=16
CONFIG_SOC_DS_SIGNATURE_MAX_BIT_LEN=4096 CONFIG_SOC_DS_SIGNATURE_MAX_BIT_LEN=4096
CONFIG_SOC_DS_KEY_PARAM_MD_IV_LENGTH=16 CONFIG_SOC_DS_KEY_PARAM_MD_IV_LENGTH=16
CONFIG_SOC_DS_KEY_CHECK_MAX_WAIT_US=1100 CONFIG_SOC_DS_KEY_CHECK_MAX_WAIT_US=1100
@@ -203,6 +205,7 @@ CONFIG_SOC_RTCIO_PIN_COUNT=22
CONFIG_SOC_RTCIO_INPUT_OUTPUT_SUPPORTED=y CONFIG_SOC_RTCIO_INPUT_OUTPUT_SUPPORTED=y
CONFIG_SOC_RTCIO_HOLD_SUPPORTED=y CONFIG_SOC_RTCIO_HOLD_SUPPORTED=y
CONFIG_SOC_RTCIO_WAKE_SUPPORTED=y CONFIG_SOC_RTCIO_WAKE_SUPPORTED=y
CONFIG_SOC_LP_IO_CLOCK_IS_INDEPENDENT=y
CONFIG_SOC_SDM_GROUPS=y CONFIG_SOC_SDM_GROUPS=y
CONFIG_SOC_SDM_CHANNELS_PER_GROUP=8 CONFIG_SOC_SDM_CHANNELS_PER_GROUP=8
CONFIG_SOC_SDM_CLK_SUPPORT_APB=y CONFIG_SOC_SDM_CLK_SUPPORT_APB=y
@@ -243,6 +246,8 @@ CONFIG_SOC_TIMER_GROUP_COUNTER_BIT_WIDTH=54
CONFIG_SOC_TIMER_GROUP_SUPPORT_XTAL=y CONFIG_SOC_TIMER_GROUP_SUPPORT_XTAL=y
CONFIG_SOC_TIMER_GROUP_SUPPORT_APB=y CONFIG_SOC_TIMER_GROUP_SUPPORT_APB=y
CONFIG_SOC_TIMER_GROUP_TOTAL_TIMERS=4 CONFIG_SOC_TIMER_GROUP_TOTAL_TIMERS=4
CONFIG_SOC_LP_TIMER_BIT_WIDTH_LO=32
CONFIG_SOC_LP_TIMER_BIT_WIDTH_HI=16
CONFIG_SOC_TOUCH_SENSOR_VERSION=2 CONFIG_SOC_TOUCH_SENSOR_VERSION=2
CONFIG_SOC_TOUCH_SENSOR_NUM=15 CONFIG_SOC_TOUCH_SENSOR_NUM=15
CONFIG_SOC_TOUCH_SUPPORT_SLEEP_WAKEUP=y CONFIG_SOC_TOUCH_SUPPORT_SLEEP_WAKEUP=y
@@ -537,23 +542,47 @@ CONFIG_PARTITION_TABLE_MD5=y
# end of Partition Table # end of Partition Table
# #
# OpenIris basic configuration # ENV_Caps
# #
CONFIG_ENV_GPIO_RANGE_MIN=0 CONFIG_ENV_GPIO_RANGE_MIN=0
CONFIG_ENV_GPIO_RANGE_MAX=48 CONFIG_ENV_GPIO_RANGE_MAX=48
CONFIG_ENV_GPIO_IN_RANGE_MAX=48 CONFIG_ENV_GPIO_IN_RANGE_MAX=48
CONFIG_ENV_GPIO_OUT_RANGE_MAX=48 CONFIG_ENV_GPIO_OUT_RANGE_MAX=48
CONFIG_BLINK_GPIO=38 # end of ENV_Caps
CONFIG_SUPPORTS_EXTERNAL_LED_CONTROL=y
CONFIG_LED_C_PIN=1 #
CONFIG_BLINK_PERIOD=1000 # OpenIris: General Configuration
CONFIG_WIRED_MODE=y #
CONFIG_MDNS_HOSTNAME="openiristracker" CONFIG_GENERAL_WIRED_MODE=y
CONFIG_GENERAL_UVC_DELAY=30
# end of OpenIris: General Configuration
#
# OpenIris: Camera Configuration
#
CONFIG_CAMERA_USB_XCLK_FREQ=10000000
CONFIG_CAMERA_WIFI_XCLK_FREQ=16500000
# end of OpenIris: Camera Configuration
#
# OpenIris: WiFi Configuration
#
CONFIG_WIFI_MDNS_HOSTNAME="openiristracker"
CONFIG_WIFI_SSID="" CONFIG_WIFI_SSID=""
CONFIG_WIFI_PASSWORD="" CONFIG_WIFI_PASSWORD=""
CONFIG_AP_WIFI_SSID="EyeTrackVR" CONFIG_WIFI_AP_SSID="EyeTrackVR"
CONFIG_AP_WIFI_PASSWORD="12345678" CONFIG_WIFI_AP_PASSWORD="12345678"
# end of OpenIris basic configuration # end of OpenIris: WiFi Configuration
#
# OpenIris: LED Configuration
#
CONFIG_LED_BLINK_GPIO=8
CONFIG_LED_EXTERNAL_GPIO=1
CONFIG_LED_EXTERNAL_CONTROL=y
CONFIG_LED_EXTERNAL_PWM_FREQ=5000
CONFIG_LED_EXTERNAL_PWM_DUTY_CYCLE=100
# end of OpenIris: LED Configuration
# #
# Camera sensor pinout configuration # Camera sensor pinout configuration
@@ -628,7 +657,12 @@ CONFIG_APPTRACE_LOCK_ENABLE=y
# Bluetooth # Bluetooth
# #
# CONFIG_BT_ENABLED is not set # CONFIG_BT_ENABLED is not set
CONFIG_BT_ALARM_MAX_NUM=50
#
# Common Options
#
# CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED is not set
# end of Common Options
# end of Bluetooth # end of Bluetooth
# #
@@ -652,6 +686,7 @@ CONFIG_TWAI_ERRATA_FIX_LISTEN_ONLY_DOM=y
# Legacy ADC Driver Configuration # Legacy ADC Driver Configuration
# #
# CONFIG_ADC_SUPPRESS_DEPRECATE_WARN is not set # CONFIG_ADC_SUPPRESS_DEPRECATE_WARN is not set
# CONFIG_ADC_SKIP_LEGACY_CONFLICT_CHECK is not set
# #
# Legacy ADC Calibration Configuration # Legacy ADC Calibration Configuration
@@ -664,42 +699,49 @@ CONFIG_TWAI_ERRATA_FIX_LISTEN_ONLY_DOM=y
# Legacy MCPWM Driver Configurations # Legacy MCPWM Driver Configurations
# #
# CONFIG_MCPWM_SUPPRESS_DEPRECATE_WARN is not set # CONFIG_MCPWM_SUPPRESS_DEPRECATE_WARN is not set
# CONFIG_MCPWM_SKIP_LEGACY_CONFLICT_CHECK is not set
# end of Legacy MCPWM Driver Configurations # end of Legacy MCPWM Driver Configurations
# #
# Legacy Timer Group Driver Configurations # Legacy Timer Group Driver Configurations
# #
# CONFIG_GPTIMER_SUPPRESS_DEPRECATE_WARN is not set # CONFIG_GPTIMER_SUPPRESS_DEPRECATE_WARN is not set
# CONFIG_GPTIMER_SKIP_LEGACY_CONFLICT_CHECK is not set
# end of Legacy Timer Group Driver Configurations # end of Legacy Timer Group Driver Configurations
# #
# Legacy RMT Driver Configurations # Legacy RMT Driver Configurations
# #
# CONFIG_RMT_SUPPRESS_DEPRECATE_WARN is not set # CONFIG_RMT_SUPPRESS_DEPRECATE_WARN is not set
# CONFIG_RMT_SKIP_LEGACY_CONFLICT_CHECK is not set
# end of Legacy RMT Driver Configurations # end of Legacy RMT Driver Configurations
# #
# Legacy I2S Driver Configurations # Legacy I2S Driver Configurations
# #
# CONFIG_I2S_SUPPRESS_DEPRECATE_WARN is not set # CONFIG_I2S_SUPPRESS_DEPRECATE_WARN is not set
# CONFIG_I2S_SKIP_LEGACY_CONFLICT_CHECK is not set
# end of Legacy I2S Driver Configurations # end of Legacy I2S Driver Configurations
# #
# Legacy PCNT Driver Configurations # Legacy PCNT Driver Configurations
# #
# CONFIG_PCNT_SUPPRESS_DEPRECATE_WARN is not set # CONFIG_PCNT_SUPPRESS_DEPRECATE_WARN is not set
# CONFIG_PCNT_SKIP_LEGACY_CONFLICT_CHECK is not set
# end of Legacy PCNT Driver Configurations # end of Legacy PCNT Driver Configurations
# #
# Legacy SDM Driver Configurations # Legacy SDM Driver Configurations
# #
# CONFIG_SDM_SUPPRESS_DEPRECATE_WARN is not set # CONFIG_SDM_SUPPRESS_DEPRECATE_WARN is not set
# CONFIG_SDM_SKIP_LEGACY_CONFLICT_CHECK is not set
# end of Legacy SDM Driver Configurations # end of Legacy SDM Driver Configurations
# #
# Legacy Temperature Sensor Driver Configurations # Legacy Temperature Sensor Driver Configurations
# #
# CONFIG_TEMP_SENSOR_SUPPRESS_DEPRECATE_WARN is not set # CONFIG_TEMP_SENSOR_SUPPRESS_DEPRECATE_WARN is not set
# CONFIG_TEMP_SENSOR_SKIP_LEGACY_CONFLICT_CHECK is not set
# end of Legacy Temperature Sensor Driver Configurations # end of Legacy Temperature Sensor Driver Configurations
# end of Driver Configurations # end of Driver Configurations
@@ -759,6 +801,7 @@ CONFIG_ESP_ERR_TO_NAME_LOOKUP=y
CONFIG_GPTIMER_ISR_HANDLER_IN_IRAM=y CONFIG_GPTIMER_ISR_HANDLER_IN_IRAM=y
# CONFIG_GPTIMER_CTRL_FUNC_IN_IRAM is not set # CONFIG_GPTIMER_CTRL_FUNC_IN_IRAM is not set
# CONFIG_GPTIMER_ISR_IRAM_SAFE is not set # CONFIG_GPTIMER_ISR_IRAM_SAFE is not set
CONFIG_GPTIMER_OBJ_CACHE_SAFE=y
# CONFIG_GPTIMER_ENABLE_DEBUG_LOG is not set # CONFIG_GPTIMER_ENABLE_DEBUG_LOG is not set
# end of ESP-Driver:GPTimer Configurations # end of ESP-Driver:GPTimer Configurations
@@ -877,6 +920,13 @@ CONFIG_ESP_GDBSTUB_SUPPORT_TASKS=y
CONFIG_ESP_GDBSTUB_MAX_TASKS=32 CONFIG_ESP_GDBSTUB_MAX_TASKS=32
# end of GDB Stub # end of GDB Stub
#
# ESP HID
#
CONFIG_ESPHID_TASK_SIZE_BT=2048
CONFIG_ESPHID_TASK_SIZE_BLE=4096
# end of ESP HID
# #
# ESP HTTP client # ESP HTTP client
# #
@@ -1051,6 +1101,7 @@ CONFIG_ESP_PHY_RF_CAL_PARTIAL=y
# CONFIG_ESP_PHY_RF_CAL_FULL is not set # CONFIG_ESP_PHY_RF_CAL_FULL is not set
CONFIG_ESP_PHY_CALIBRATION_MODE=0 CONFIG_ESP_PHY_CALIBRATION_MODE=0
# CONFIG_ESP_PHY_PLL_TRACK_DEBUG is not set # CONFIG_ESP_PHY_PLL_TRACK_DEBUG is not set
# CONFIG_ESP_PHY_RECORD_USED_TIME is not set
# end of PHY # end of PHY
# #
@@ -1251,9 +1302,9 @@ CONFIG_ESP_WIFI_ENABLED=y
CONFIG_ESP_WIFI_STATIC_RX_BUFFER_NUM=10 CONFIG_ESP_WIFI_STATIC_RX_BUFFER_NUM=10
CONFIG_ESP_WIFI_DYNAMIC_RX_BUFFER_NUM=32 CONFIG_ESP_WIFI_DYNAMIC_RX_BUFFER_NUM=32
CONFIG_ESP_WIFI_STATIC_TX_BUFFER=y CONFIG_ESP_WIFI_STATIC_TX_BUFFER=y
# CONFIG_ESP_WIFI_DYNAMIC_TX_BUFFER is not set
CONFIG_ESP_WIFI_TX_BUFFER_TYPE=0 CONFIG_ESP_WIFI_TX_BUFFER_TYPE=0
CONFIG_ESP_WIFI_STATIC_TX_BUFFER_NUM=16 CONFIG_ESP_WIFI_STATIC_TX_BUFFER_NUM=16
CONFIG_ESP_WIFI_CACHE_TX_BUFFER_NUM=32
CONFIG_ESP_WIFI_STATIC_RX_MGMT_BUFFER=y CONFIG_ESP_WIFI_STATIC_RX_MGMT_BUFFER=y
# CONFIG_ESP_WIFI_DYNAMIC_RX_MGMT_BUFFER is not set # CONFIG_ESP_WIFI_DYNAMIC_RX_MGMT_BUFFER is not set
CONFIG_ESP_WIFI_DYNAMIC_RX_MGMT_BUF=0 CONFIG_ESP_WIFI_DYNAMIC_RX_MGMT_BUF=0
@@ -1263,7 +1314,6 @@ CONFIG_ESP_WIFI_AMPDU_TX_ENABLED=y
CONFIG_ESP_WIFI_TX_BA_WIN=6 CONFIG_ESP_WIFI_TX_BA_WIN=6
CONFIG_ESP_WIFI_AMPDU_RX_ENABLED=y CONFIG_ESP_WIFI_AMPDU_RX_ENABLED=y
CONFIG_ESP_WIFI_RX_BA_WIN=6 CONFIG_ESP_WIFI_RX_BA_WIN=6
# CONFIG_ESP_WIFI_AMSDU_TX_ENABLED is not set
CONFIG_ESP_WIFI_NVS_ENABLED=y CONFIG_ESP_WIFI_NVS_ENABLED=y
CONFIG_ESP_WIFI_TASK_PINNED_TO_CORE_0=y CONFIG_ESP_WIFI_TASK_PINNED_TO_CORE_0=y
# CONFIG_ESP_WIFI_TASK_PINNED_TO_CORE_1 is not set # CONFIG_ESP_WIFI_TASK_PINNED_TO_CORE_1 is not set
@@ -1434,7 +1484,6 @@ CONFIG_HAL_DEFAULT_ASSERTION_LEVEL=2
CONFIG_HAL_WDT_USE_ROM_IMPL=y CONFIG_HAL_WDT_USE_ROM_IMPL=y
CONFIG_HAL_SPI_MASTER_FUNC_IN_IRAM=y CONFIG_HAL_SPI_MASTER_FUNC_IN_IRAM=y
CONFIG_HAL_SPI_SLAVE_FUNC_IN_IRAM=y CONFIG_HAL_SPI_SLAVE_FUNC_IN_IRAM=y
# CONFIG_HAL_ECDSA_GEN_SIG_CM is not set
# end of Hardware Abstraction Layer (HAL) and Low Level (LL) # end of Hardware Abstraction Layer (HAL) and Low Level (LL)
# #
@@ -1836,25 +1885,10 @@ CONFIG_STDATOMIC_S32C1I_SPIRAM_WORKAROUND=y
# CONFIG_OPENTHREAD_ENABLED is not set # CONFIG_OPENTHREAD_ENABLED is not set
# #
# Thread Operational Dataset # OpenThread Spinel
# #
CONFIG_OPENTHREAD_NETWORK_NAME="OpenThread-ESP"
CONFIG_OPENTHREAD_MESH_LOCAL_PREFIX="fd00:db8:a0:0::/64"
CONFIG_OPENTHREAD_NETWORK_CHANNEL=15
CONFIG_OPENTHREAD_NETWORK_PANID=0x1234
CONFIG_OPENTHREAD_NETWORK_EXTPANID="dead00beef00cafe"
CONFIG_OPENTHREAD_NETWORK_MASTERKEY="00112233445566778899aabbccddeeff"
CONFIG_OPENTHREAD_NETWORK_PSKC="104810e2315100afd6bc9215a6bfac53"
# end of Thread Operational Dataset
CONFIG_OPENTHREAD_XTAL_ACCURACY=130
# CONFIG_OPENTHREAD_SPINEL_ONLY is not set # CONFIG_OPENTHREAD_SPINEL_ONLY is not set
CONFIG_OPENTHREAD_RX_ON_WHEN_IDLE=y # end of OpenThread Spinel
#
# Thread Address Query Config
#
# end of Thread Address Query Config
# end of OpenThread # end of OpenThread
# #
@@ -1863,6 +1897,7 @@ CONFIG_OPENTHREAD_RX_ON_WHEN_IDLE=y
CONFIG_ESP_PROTOCOMM_SUPPORT_SECURITY_VERSION_0=y CONFIG_ESP_PROTOCOMM_SUPPORT_SECURITY_VERSION_0=y
CONFIG_ESP_PROTOCOMM_SUPPORT_SECURITY_VERSION_1=y CONFIG_ESP_PROTOCOMM_SUPPORT_SECURITY_VERSION_1=y
CONFIG_ESP_PROTOCOMM_SUPPORT_SECURITY_VERSION_2=y CONFIG_ESP_PROTOCOMM_SUPPORT_SECURITY_VERSION_2=y
CONFIG_ESP_PROTOCOMM_SUPPORT_SECURITY_PATCH_VERSION=y
# end of Protocomm # end of Protocomm
# #
@@ -2155,9 +2190,9 @@ CONFIG_UVC_MULTI_FRAME_FPS_3=90
# #
# UVC Task Config # UVC Task Config
# #
CONFIG_UVC_TINYUSB_TASK_PRIORITY=3 CONFIG_UVC_TINYUSB_TASK_PRIORITY=4
CONFIG_UVC_TINYUSB_TASK_CORE=-1 CONFIG_UVC_TINYUSB_TASK_CORE=-1
CONFIG_UVC_CAM1_TASK_PRIORITY=2 CONFIG_UVC_CAM1_TASK_PRIORITY=3
CONFIG_UVC_CAM1_TASK_CORE=-1 CONFIG_UVC_CAM1_TASK_CORE=-1
# end of UVC Task Config # end of UVC Task Config
# end of USB Device UVC # end of USB Device UVC
@@ -2190,6 +2225,7 @@ CONFIG_OV5640_SUPPORT=y
# CONFIG_SC101IOT_SUPPORT is not set # CONFIG_SC101IOT_SUPPORT is not set
# CONFIG_SC030IOT_SUPPORT is not set # CONFIG_SC030IOT_SUPPORT is not set
# CONFIG_SC031GS_SUPPORT is not set # CONFIG_SC031GS_SUPPORT is not set
CONFIG_MEGA_CCM_SUPPORT=y
# CONFIG_SCCB_HARDWARE_I2C_PORT0 is not set # CONFIG_SCCB_HARDWARE_I2C_PORT0 is not set
CONFIG_SCCB_HARDWARE_I2C_PORT1=y CONFIG_SCCB_HARDWARE_I2C_PORT1=y
CONFIG_SCCB_CLK_FREQ=100000 CONFIG_SCCB_CLK_FREQ=100000
@@ -2216,6 +2252,17 @@ CONFIG_MDNS_TASK_STACK_SIZE=4096
CONFIG_MDNS_TASK_AFFINITY_CPU0=y CONFIG_MDNS_TASK_AFFINITY_CPU0=y
# CONFIG_MDNS_TASK_AFFINITY_CPU1 is not set # CONFIG_MDNS_TASK_AFFINITY_CPU1 is not set
CONFIG_MDNS_TASK_AFFINITY=0x0 CONFIG_MDNS_TASK_AFFINITY=0x0
#
# MDNS Memory Configuration
#
# CONFIG_MDNS_TASK_CREATE_FROM_SPIRAM is not set
CONFIG_MDNS_TASK_CREATE_FROM_INTERNAL=y
# CONFIG_MDNS_MEMORY_ALLOC_SPIRAM is not set
CONFIG_MDNS_MEMORY_ALLOC_INTERNAL=y
# CONFIG_MDNS_MEMORY_CUSTOM_IMPL is not set
# end of MDNS Memory Configuration
CONFIG_MDNS_SERVICE_ADD_TIMEOUT_MS=2000 CONFIG_MDNS_SERVICE_ADD_TIMEOUT_MS=2000
CONFIG_MDNS_TIMER_PERIOD_MS=100 CONFIG_MDNS_TIMER_PERIOD_MS=100
# CONFIG_MDNS_NETWORKING_SOCKET is not set # CONFIG_MDNS_NETWORKING_SOCKET is not set
@@ -2326,7 +2373,6 @@ CONFIG_TASK_WDT_CHECK_IDLE_TASK_CPU1=y
CONFIG_ESP32S3_DEBUG_OCDAWARE=y CONFIG_ESP32S3_DEBUG_OCDAWARE=y
CONFIG_BROWNOUT_DET=y CONFIG_BROWNOUT_DET=y
CONFIG_ESP32S3_BROWNOUT_DET=y CONFIG_ESP32S3_BROWNOUT_DET=y
CONFIG_ESP32S3_BROWNOUT_DET=y
CONFIG_BROWNOUT_DET_LVL_SEL_7=y CONFIG_BROWNOUT_DET_LVL_SEL_7=y
CONFIG_ESP32S3_BROWNOUT_DET_LVL_SEL_7=y CONFIG_ESP32S3_BROWNOUT_DET_LVL_SEL_7=y
# CONFIG_BROWNOUT_DET_LVL_SEL_6 is not set # CONFIG_BROWNOUT_DET_LVL_SEL_6 is not set
@@ -2349,17 +2395,14 @@ CONFIG_ESP32_WIFI_ENABLED=y
CONFIG_ESP32_WIFI_STATIC_RX_BUFFER_NUM=10 CONFIG_ESP32_WIFI_STATIC_RX_BUFFER_NUM=10
CONFIG_ESP32_WIFI_DYNAMIC_RX_BUFFER_NUM=32 CONFIG_ESP32_WIFI_DYNAMIC_RX_BUFFER_NUM=32
CONFIG_ESP32_WIFI_STATIC_TX_BUFFER=y CONFIG_ESP32_WIFI_STATIC_TX_BUFFER=y
# CONFIG_ESP32_WIFI_DYNAMIC_TX_BUFFER is not set
CONFIG_ESP32_WIFI_TX_BUFFER_TYPE=0 CONFIG_ESP32_WIFI_TX_BUFFER_TYPE=0
CONFIG_ESP32_WIFI_STATIC_TX_BUFFER_NUM=16 CONFIG_ESP32_WIFI_STATIC_TX_BUFFER_NUM=16
CONFIG_ESP32_WIFI_CACHE_TX_BUFFER_NUM=32
# CONFIG_ESP32_WIFI_CSI_ENABLED is not set # CONFIG_ESP32_WIFI_CSI_ENABLED is not set
CONFIG_ESP32_WIFI_AMPDU_TX_ENABLED=y CONFIG_ESP32_WIFI_AMPDU_TX_ENABLED=y
CONFIG_ESP32_WIFI_TX_BA_WIN=6 CONFIG_ESP32_WIFI_TX_BA_WIN=6
CONFIG_ESP32_WIFI_AMPDU_RX_ENABLED=y CONFIG_ESP32_WIFI_AMPDU_RX_ENABLED=y
CONFIG_ESP32_WIFI_AMPDU_RX_ENABLED=y
CONFIG_ESP32_WIFI_RX_BA_WIN=6 CONFIG_ESP32_WIFI_RX_BA_WIN=6
CONFIG_ESP32_WIFI_RX_BA_WIN=6
# CONFIG_ESP32_WIFI_AMSDU_TX_ENABLED is not set
CONFIG_ESP32_WIFI_NVS_ENABLED=y CONFIG_ESP32_WIFI_NVS_ENABLED=y
CONFIG_ESP32_WIFI_TASK_PINNED_TO_CORE_0=y CONFIG_ESP32_WIFI_TASK_PINNED_TO_CORE_0=y
# CONFIG_ESP32_WIFI_TASK_PINNED_TO_CORE_1 is not set # CONFIG_ESP32_WIFI_TASK_PINNED_TO_CORE_1 is not set
+3 -22
View File
@@ -536,25 +536,6 @@ CONFIG_PARTITION_TABLE_OFFSET=0x8000
CONFIG_PARTITION_TABLE_MD5=y CONFIG_PARTITION_TABLE_MD5=y
# end of Partition Table # end of Partition Table
#
# OpenIris basic configuration
#
CONFIG_ENV_GPIO_RANGE_MIN=0
CONFIG_ENV_GPIO_RANGE_MAX=48
CONFIG_ENV_GPIO_IN_RANGE_MAX=48
CONFIG_ENV_GPIO_OUT_RANGE_MAX=48
CONFIG_BLINK_GPIO=38
CONFIG_BLINK_PERIOD=1000
CONFIG_WIRED_MODE=y
CONFIG_MDNS_HOSTNAME="openiristracker"
CONFIG_WIFI_SSID=""
CONFIG_WIFI_PASSWORD=""
CONFIG_AP_WIFI_SSID="EyeTrackVR"
CONFIG_AP_WIFI_PASSWORD="12345678"
# CONFIG_SUPPORTS_EXTERNAL_LED_CONTROL is not set
CONFIG_LED_C_PIN=1
# end of OpenIris basic configuration
# #
# Camera sensor pinout configuration # Camera sensor pinout configuration
# #
@@ -2204,7 +2185,7 @@ CONFIG_UVC_CAM1_MULTI_FRAMESIZE=y
# #
CONFIG_UVC_MULTI_FRAME_WIDTH_1=240 CONFIG_UVC_MULTI_FRAME_WIDTH_1=240
CONFIG_UVC_MULTI_FRAME_HEIGHT_1=240 CONFIG_UVC_MULTI_FRAME_HEIGHT_1=240
CONFIG_UVC_MULTI_FRAME_FPS_1=60 CONFIG_UVC_MULTI_FRAME_FPS_1=90
# end of FRAME_SIZE_1 # end of FRAME_SIZE_1
# #
@@ -2212,7 +2193,7 @@ CONFIG_UVC_MULTI_FRAME_FPS_1=60
# #
CONFIG_UVC_MULTI_FRAME_WIDTH_2=240 CONFIG_UVC_MULTI_FRAME_WIDTH_2=240
CONFIG_UVC_MULTI_FRAME_HEIGHT_2=240 CONFIG_UVC_MULTI_FRAME_HEIGHT_2=240
CONFIG_UVC_MULTI_FRAME_FPS_2=60 CONFIG_UVC_MULTI_FRAME_FPS_2=90
# end of FRAME_SIZE_2 # end of FRAME_SIZE_2
# #
@@ -2220,7 +2201,7 @@ CONFIG_UVC_MULTI_FRAME_FPS_2=60
# #
CONFIG_UVC_MULTI_FRAME_WIDTH_3=240 CONFIG_UVC_MULTI_FRAME_WIDTH_3=240
CONFIG_UVC_MULTI_FRAME_HEIGHT_3=240 CONFIG_UVC_MULTI_FRAME_HEIGHT_3=240
CONFIG_UVC_MULTI_FRAME_FPS_3=60 CONFIG_UVC_MULTI_FRAME_FPS_3=90
# end of FRAME_SIZE_3 # end of FRAME_SIZE_3
# end of UVC_MULTI_FRAME_CONFIG # end of UVC_MULTI_FRAME_CONFIG
+62
View File
@@ -0,0 +1,62 @@
CONFIG_BLINK_LED_GPIO=y
CONFIG_BLINK_GPIO=21
CONFIG_ESPTOOLPY_FLASHSIZE_8MB=y
CONFIG_ESP32S3_DEFAULT_CPU_FREQ_240=y
CONFIG_ESP32S3_SPIRAM_SUPPORT=y
CONFIG_SPIRAM_MODE_OCT=y
# CONFIG_ESPTOOLPY_FLASHSIZE_1MB is not set
# CONFIG_ESPTOOLPY_FLASHSIZE_2MB is not set
# CONFIG_ESPTOOLPY_FLASHSIZE_4MB is not set
CONFIG_ESPTOOLPY_FLASHSIZE_8MB=y
# CONFIG_ESPTOOLPY_FLASHSIZE_16MB is not set
# CONFIG_ESPTOOLPY_FLASHSIZE_32MB is not set
# CONFIG_ESPTOOLPY_FLASHSIZE_64MB is not set
# CONFIG_ESPTOOLPY_FLASHSIZE_128MB is not set
CONFIG_ESPTOOLPY_FLASHSIZE="8MB"
# Camera sensor pinout configuration
CONFIG_CAMERA_MODULE_NAME="FaceFocusVR_Face"
CONFIG_PWDN_GPIO_NUM=-1
CONFIG_RESET_GPIO_NUM=-1
CONFIG_XCLK_GPIO_NUM=10
CONFIG_SIOD_GPIO_NUM=40
CONFIG_SIOC_GPIO_NUM=39
CONFIG_Y9_GPIO_NUM=48
CONFIG_Y8_GPIO_NUM=11
CONFIG_Y7_GPIO_NUM=12
CONFIG_Y6_GPIO_NUM=14
CONFIG_Y5_GPIO_NUM=16
CONFIG_Y4_GPIO_NUM=18
CONFIG_Y3_GPIO_NUM=17
CONFIG_Y2_GPIO_NUM=15
CONFIG_VSYNC_GPIO_NUM=38
CONFIG_HREF_GPIO_NUM=47
CONFIG_PCLK_GPIO_NUM=13
# end of Camera sensor pinout configuration
# CONFIG_FLASHMODE_QIO is not set
# CONFIG_FLASHMODE_QOUT is not set
CONFIG_FLASHMODE_DIO=y
CONFIG_SPIRAM_MODE_OCT=y
CONFIG_SPIRAM_TYPE_AUTO=y
# CONFIG_SPIRAM_TYPE_ESPPSRAM16 is not set
# CONFIG_SPIRAM_TYPE_ESPPSRAM32 is not set
# CONFIG_SPIRAM_TYPE_ESPPSRAM64 is not set
CONFIG_SPIRAM_ALLOW_STACK_EXTERNAL_MEMORY=y
CONFIG_SPIRAM_CLK_IO=30
CONFIG_SPIRAM_CS_IO=26
# CONFIG_SPIRAM_XIP_FROM_PSRAM is not set
# CONFIG_SPIRAM_FETCH_INSTRUCTIONS is not set
# CONFIG_SPIRAM_RODATA is not set
CONFIG_SPIRAM_SPEED_80M=y
# CONFIG_SPIRAM_SPEED_40M is not set
# CONFIG_SPIRAM_XIP_FROM_PSRAM is not set
# CONFIG_SPIRAM_FETCH_INSTRUCTIONS is not set
# CONFIG_SPIRAM_RODATA is not set
# CONFIG_SPIRAM_SPEED_120M is not set
CONFIG_SPIRAM_SPEED=80
CONFIG_SPIRAM_SPEED_80M=y
CONFIG_LED_EXTERNAL_CONTROL=y
CONFIG_LED_EXTERNAL_GPIO=9
CONFIG_LED_EXTERNAL_PWM_FREQ=20000
CONFIG_LED_EXTERNAL_PWM_DUTY_CYCLE=50
CONFIG_CAMERA_USB_XCLK_FREQ=23000000
CONFIG_GENERAL_WIRED_MODE=y
+62
View File
@@ -0,0 +1,62 @@
CONFIG_BLINK_LED_GPIO=y
CONFIG_BLINK_GPIO=21
CONFIG_ESPTOOLPY_FLASHSIZE_8MB=y
CONFIG_ESP32S3_DEFAULT_CPU_FREQ_240=y
CONFIG_ESP32S3_SPIRAM_SUPPORT=y
CONFIG_SPIRAM_MODE_OCT=y
# CONFIG_ESPTOOLPY_FLASHSIZE_1MB is not set
# CONFIG_ESPTOOLPY_FLASHSIZE_2MB is not set
# CONFIG_ESPTOOLPY_FLASHSIZE_4MB is not set
CONFIG_ESPTOOLPY_FLASHSIZE_8MB=y
# CONFIG_ESPTOOLPY_FLASHSIZE_16MB is not set
# CONFIG_ESPTOOLPY_FLASHSIZE_32MB is not set
# CONFIG_ESPTOOLPY_FLASHSIZE_64MB is not set
# CONFIG_ESPTOOLPY_FLASHSIZE_128MB is not set
CONFIG_ESPTOOLPY_FLASHSIZE="8MB"
# Camera sensor pinout configuration
CONFIG_CAMERA_MODULE_NAME="FaceFocusVR_Face"
CONFIG_PWDN_GPIO_NUM=-1
CONFIG_RESET_GPIO_NUM=-1
CONFIG_XCLK_GPIO_NUM=10
CONFIG_SIOD_GPIO_NUM=40
CONFIG_SIOC_GPIO_NUM=39
CONFIG_Y9_GPIO_NUM=48
CONFIG_Y8_GPIO_NUM=11
CONFIG_Y7_GPIO_NUM=12
CONFIG_Y6_GPIO_NUM=14
CONFIG_Y5_GPIO_NUM=16
CONFIG_Y4_GPIO_NUM=18
CONFIG_Y3_GPIO_NUM=17
CONFIG_Y2_GPIO_NUM=15
CONFIG_VSYNC_GPIO_NUM=38
CONFIG_HREF_GPIO_NUM=47
CONFIG_PCLK_GPIO_NUM=13
# end of Camera sensor pinout configuration
# CONFIG_FLASHMODE_QIO is not set
# CONFIG_FLASHMODE_QOUT is not set
CONFIG_FLASHMODE_DIO=y
CONFIG_SPIRAM_MODE_OCT=y
CONFIG_SPIRAM_TYPE_AUTO=y
# CONFIG_SPIRAM_TYPE_ESPPSRAM16 is not set
# CONFIG_SPIRAM_TYPE_ESPPSRAM32 is not set
# CONFIG_SPIRAM_TYPE_ESPPSRAM64 is not set
CONFIG_SPIRAM_ALLOW_STACK_EXTERNAL_MEMORY=y
CONFIG_SPIRAM_CLK_IO=30
CONFIG_SPIRAM_CS_IO=26
# CONFIG_SPIRAM_XIP_FROM_PSRAM is not set
# CONFIG_SPIRAM_FETCH_INSTRUCTIONS is not set
# CONFIG_SPIRAM_RODATA is not set
CONFIG_SPIRAM_SPEED_80M=y
# CONFIG_SPIRAM_SPEED_40M is not set
# CONFIG_SPIRAM_XIP_FROM_PSRAM is not set
# CONFIG_SPIRAM_FETCH_INSTRUCTIONS is not set
# CONFIG_SPIRAM_RODATA is not set
# CONFIG_SPIRAM_SPEED_120M is not set
CONFIG_SPIRAM_SPEED=80
CONFIG_SPIRAM_SPEED_80M=y
CONFIG_LED_EXTERNAL_CONTROL=y
CONFIG_LED_EXTERNAL_GPIO=9
CONFIG_LED_EXTERNAL_PWM_FREQ=20000
CONFIG_LED_EXTERNAL_PWM_DUTY_CYCLE=100
CONFIG_CAMERA_USB_XCLK_FREQ=23000000
CONFIG_GENERAL_WIRED_MODE=y
+6 -1
View File
@@ -46,4 +46,9 @@ CONFIG_SPIRAM_CS_IO=26
# CONFIG_SPIRAM_RODATA is not set # CONFIG_SPIRAM_RODATA is not set
# CONFIG_SPIRAM_SPEED_120M is not set # CONFIG_SPIRAM_SPEED_120M is not set
CONFIG_SPIRAM_SPEED_80M=y CONFIG_SPIRAM_SPEED_80M=y
CONFIG_SUPPORTS_EXTERNAL_LED_CONTROL=y CONFIG_LED_EXTERNAL_CONTROL=y
CONFIG_LED_EXTERNAL_PWM_FREQ=5000
CONFIG_LED_EXTERNAL_PWM_DUTY_CYCLE=100
CONFIG_LED_EXTERNAL_GPIO=1
CONFIG_CAMERA_USB_XCLK_FREQ=23000000 # NOT TESTED
CONFIG_GENERAL_WIRED_MODE=y
+3 -1
View File
@@ -54,4 +54,6 @@ CONFIG_SPIRAM_SPEED_80M=y
# CONFIG_SPIRAM_SPEED_120M is not set # CONFIG_SPIRAM_SPEED_120M is not set
CONFIG_SPIRAM_SPEED=80 CONFIG_SPIRAM_SPEED=80
CONFIG_SPIRAM_SPEED_80M=y CONFIG_SPIRAM_SPEED_80M=y
# CONFIG_SUPPORTS_EXTERNAL_LED_CONTROL is not set # CONFIG_LED_EXTERNAL_CONTROL is not set
CONFIG_CAMERA_USB_XCLK_FREQ=23000000
CONFIG_GENERAL_WIRED_MODE=y
+3 -1
View File
@@ -10,7 +10,9 @@ ENDC = '\033[0m'
sdkconfig_defaults = "sdkconfig.base_defaults" sdkconfig_defaults = "sdkconfig.base_defaults"
supported_boards = [ supported_boards = [
"xiao-esp32s3", "xiao-esp32s3",
"project_babble" "project_babble",
"facefocusvr_face",
"facefocusvr_eye"
] ]
parser = argparse.ArgumentParser() parser = argparse.ArgumentParser()