changes for target esp32, such as ESP32-WROOM-32
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
menu "espScope Configuration"
|
||||
config LED_BUILTIN
|
||||
int "LED IO Pin"
|
||||
default 15
|
||||
default 2
|
||||
help
|
||||
LED IO pin
|
||||
|
||||
@@ -13,10 +13,11 @@ menu "espScope Configuration"
|
||||
Default is 9 (BOOT button on Seeed XIAO ESP32C6).
|
||||
|
||||
config BOARD_SPECIFIC_INIT
|
||||
string "Name of file containing any board specfic initialisation"
|
||||
string "Name of file containing any board specific initialisation"
|
||||
default "boards/default.h"
|
||||
help
|
||||
If your board requires some specific initialization C code, place it in
|
||||
a file called "./boards/<your board name>.h" and set this to "./boards/your board name.h"
|
||||
Default is don't include any board-specific initialization file.
|
||||
Default is boards/default.h which is empty.
|
||||
|
||||
endmenu
|
||||
|
||||
0
main/boards/default.h
Normal file
0
main/boards/default.h
Normal file
35
main/main.c
35
main/main.c
@@ -57,7 +57,7 @@ static int s_ws_client_fd = -1;
|
||||
|
||||
// Global configuration state
|
||||
static volatile bool s_reconfig_needed = false;
|
||||
static uint32_t s_sample_rate = 10000;
|
||||
static uint32_t s_sample_rate = 20000;
|
||||
static adc_atten_t s_atten = ADC_ATTEN_DB_12;
|
||||
static adc_bitwidth_t s_bit_width = ADC_BIT_WIDTH;
|
||||
static uint16_t s_test_hz = 100;
|
||||
@@ -225,11 +225,13 @@ static void continuous_adc_init(adc_channel_t* channel, uint8_t channel_num,
|
||||
dig_cfg.adc_pattern = adc_pattern;
|
||||
ESP_ERROR_CHECK(adc_continuous_config(*out_handle, &dig_cfg));
|
||||
}
|
||||
#define TEST_SIGNAL_GPIO 4
|
||||
|
||||
static bool ledc_inited = false;
|
||||
static void start_test_signal(uint32_t hz) {
|
||||
if (ledc_inited) {
|
||||
ESP_LOGI(TAG, "De-init test signal");
|
||||
gpio_reset_pin(GPIO_NUM_1);
|
||||
gpio_reset_pin(TEST_SIGNAL_GPIO);
|
||||
|
||||
// Stop the PWM signal on channel 0
|
||||
ledc_stop(LEDC_LOW_SPEED_MODE, LEDC_CHANNEL_0, 0);
|
||||
@@ -240,7 +242,7 @@ static void start_test_signal(uint32_t hz) {
|
||||
// (Optional) Uninstall fade functionality if used
|
||||
ledc_fade_func_uninstall();
|
||||
}
|
||||
ESP_LOGI(TAG, "Starting test signal at %u Hz", hz);
|
||||
ESP_LOGI(TAG, "Starting test signal at %u Hz on GPIO %d", hz, TEST_SIGNAL_GPIO);
|
||||
ledc_timer_config_t ledc_timer = {
|
||||
.speed_mode = LEDC_LOW_SPEED_MODE,
|
||||
.duty_resolution = LEDC_TIMER_14_BIT,
|
||||
@@ -248,7 +250,7 @@ static void start_test_signal(uint32_t hz) {
|
||||
.freq_hz = hz,
|
||||
.clk_cfg = LEDC_AUTO_CLK};
|
||||
ledc_channel_config_t ledc_channel = {
|
||||
.gpio_num = 1, // GPIO data pin 1
|
||||
.gpio_num = TEST_SIGNAL_GPIO,
|
||||
.speed_mode = LEDC_LOW_SPEED_MODE,
|
||||
.channel = LEDC_CHANNEL_0,
|
||||
.timer_sel = LEDC_TIMER_0,
|
||||
@@ -334,22 +336,27 @@ void app_main(void) {
|
||||
gpio_set_level(CONFIG_LED_BUILTIN, 0);
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_BOARD_SPECIFIC_INIT
|
||||
/* Board-specific initialisation hook. Defaults to boards/default.h (empty).
|
||||
* To customise, create main/boards/<your_board>.h and set CONFIG_BOARD_SPECIFIC_INIT
|
||||
* to "boards/<your_board>.h" via menuconfig or sdkconfig. */
|
||||
#include CONFIG_BOARD_SPECIFIC_INIT
|
||||
#endif
|
||||
|
||||
is_ap = wifi_manager_init_wifi();
|
||||
|
||||
start_test_signal(100);
|
||||
xTaskCreate(adc_read_task, "adc_read_task", 8192 + ADC_READ_LEN, NULL, 5, NULL);
|
||||
|
||||
// Wait for WiFi connection (Not strict blocking anymore, manager handles it)
|
||||
// But let's keep it to print status
|
||||
// Note: s_wifi_event_group is local to this file, we removed it in place of manager's.
|
||||
// Proper way: expose event group from manager or just dont block here.
|
||||
// For now, let's just proceed. The webserver will start and wait for connections.
|
||||
// In STA mode, wait for an IP before touching hardware peripherals.
|
||||
// ADC continuous mode on ESP32 conflicts with WiFi initialisation if started too early.
|
||||
if (!is_ap) {
|
||||
ESP_LOGI(TAG, "Waiting for WiFi connection...");
|
||||
while (!is_connected()) {
|
||||
vTaskDelay(pdMS_TO_TICKS(100));
|
||||
}
|
||||
}
|
||||
|
||||
start_webserver();
|
||||
|
||||
start_test_signal(s_test_hz);
|
||||
xTaskCreate(adc_read_task, "adc_read_task", 8192 + ADC_READ_LEN, NULL, 5, NULL);
|
||||
|
||||
show_status_led();
|
||||
}
|
||||
|
||||
|
||||
@@ -217,7 +217,7 @@ static void wifi_init_softap(void) {
|
||||
ESP_LOGI(TAG, "SoftAP Started. SSID: %s", AP_SSID);
|
||||
|
||||
// Start DNS Server Task
|
||||
xTaskCreate(dns_server_task, "dns_task", 2048, NULL, 5, NULL);
|
||||
xTaskCreate(dns_server_task, "dns_task", 4096, NULL, 5, NULL);
|
||||
}
|
||||
|
||||
static void wifi_init_station(const char* ssid, const char* pass) {
|
||||
|
||||
Reference in New Issue
Block a user