modified: firmware/main/include/leds.h

modified:   firmware/main/include/wifi.h
modified:   firmware/main/src/leds.c
modified:   firmware/main/src/main.c
modified:   firmware/main/src/wifi.c
modified:   firmware/sdkconfig
Enhance power management and disable wifi temporarily for temp testing
This commit is contained in:
Sven Luethi committed 2024-09-11 18:14:32 +02:00
1 parent 6ceb9ed7af
commit 2f48a98556
6 files changed
+66 -27

No files matched your search

+4
View File
@@ -7,8 +7,12 @@ extern "C" {
void led_blink_task(void *pvParameter); void led_blink_task(void *pvParameter);
esp_err_t led_init(); esp_err_t led_init();
void led0_toggle();
void led0_on();
void led1_on(); void led1_on();
void led2_on(); void led2_on();
void led0_off();
void led1_off(); void led1_off();
void led2_off(); void led2_off();
+1
View File
@@ -7,6 +7,7 @@ extern "C" {
#endif #endif
esp_err_t wifi_init(void); esp_err_t wifi_init(void);
esp_err_t wifi_sleep();
#ifdef __cplusplus #ifdef __cplusplus
} }
+24 -18
View File
@@ -19,14 +19,14 @@ void led_blink_task(void *pvParameter)
// Blink the LEDs // Blink the LEDs
gpio_set_level(LED1, 0); gpio_set_level(LED1, 0);
gpio_set_level(LED2, 0); gpio_set_level(LED2, 0);
gpio_set_level(LED_INT, 1); //gpio_set_level(LED_INT, 1);
vTaskDelay(800 / portTICK_PERIOD_MS); vTaskDelay(800 / portTICK_PERIOD_MS);
gpio_set_level(LED1, 1); gpio_set_level(LED1, 1);
vTaskDelay(50 / portTICK_PERIOD_MS); vTaskDelay(50 / portTICK_PERIOD_MS);
gpio_set_level(LED2, 1); gpio_set_level(LED2, 1);
vTaskDelay(50 / portTICK_PERIOD_MS); vTaskDelay(50 / portTICK_PERIOD_MS);
gpio_set_level(LED1, 0); gpio_set_level(LED1, 0);
gpio_set_level(LED_INT, 0); //gpio_set_level(LED_INT, 0);
vTaskDelay(50 / portTICK_PERIOD_MS); vTaskDelay(50 / portTICK_PERIOD_MS);
gpio_set_level(LED2, 0); gpio_set_level(LED2, 0);
vTaskDelay(50 / portTICK_PERIOD_MS); vTaskDelay(50 / portTICK_PERIOD_MS);
@@ -40,39 +40,45 @@ esp_err_t led_init() {
return ESP_OK; return ESP_OK;
} }
void led0_toggle() {
gpio_set_level(LED_INT, gpio_get_level(LED_INT));
//ESP_LOGI(TAG, "LED 3 turned on");
}
void led0_on() {
gpio_set_level(LED_INT, 0);
//ESP_LOGI(TAG, "LED 3 turned on");
}
void led1_on() { void led1_on() {
gpio_set_level(LED1, 1); gpio_set_level(LED1, 1);
ESP_LOGI(TAG, "LED 1 turned on"); //ESP_LOGI(TAG, "LED 1 turned on");
} }
void led2_on() { void led2_on() {
gpio_set_level(LED2, 1); gpio_set_level(LED2, 1);
ESP_LOGI(TAG, "LED 2 turned on"); //ESP_LOGI(TAG, "LED 2 turned on");
}
void led3_on() {
gpio_set_level(LED_INT, 0);
ESP_LOGI(TAG, "LED 3 turned on");
} }
void led0_off()
{
gpio_set_level(LED_INT, 1);
//ESP_LOGI(TAG, "LED 3 turned off");
}
void led1_off() void led1_off()
{ {
gpio_set_level(LED1, 0); gpio_set_level(LED1, 0);
ESP_LOGI(TAG, "LED 1 turned off"); //ESP_LOGI(TAG, "LED 1 turned off");
} }
void led2_off() void led2_off()
{ {
gpio_set_level(LED2, 0); gpio_set_level(LED2, 0);
ESP_LOGI(TAG, "LED 2 turned off"); //ESP_LOGI(TAG, "LED 2 turned off");
} }
void led3_off()
{
gpio_set_level(LED_INT, 1);
ESP_LOGI(TAG, "LED 3 turned off");
}
+15 -3
View File
@@ -2,6 +2,7 @@
#include <freertos/task.h> #include <freertos/task.h>
#include <nvs_flash.h> #include <nvs_flash.h>
#include <esp_system.h> #include <esp_system.h>
#include <esp_sleep.h>
//#include <esp_log.h> //#include <esp_log.h>
//#include <esp_event_loop.h> //#include <esp_event_loop.h>
#include <esp_err.h> #include <esp_err.h>
@@ -16,16 +17,27 @@
static const char * TAG = "main.c"; static const char * TAG = "main.c";
void vApplicationIdleHook(void) {
//led0_toggle();
led0_off();
esp_light_sleep_start();
//wifi_sleep();
led0_on();
}
void app_main() void app_main()
{ {
ESP_ERROR_CHECK(nvs_flash_init()); ESP_ERROR_CHECK(nvs_flash_init());
ESP_ERROR_CHECK(led_init()); ESP_ERROR_CHECK(led_init());
ESP_ERROR_CHECK(wifi_init()); //ESP_ERROR_CHECK(wifi_init());
ESP_ERROR_CHECK(uart_init()); //ESP_ERROR_CHECK(uart_init());
ESP_ERROR_CHECK(controller_init()); ESP_ERROR_CHECK(controller_init());
led0_on();
xTaskCreate(led_blink_task, "led_blink_task", configMINIMAL_STACK_SIZE, NULL, 5, NULL); xTaskCreate(led_blink_task, "led_blink_task", configMINIMAL_STACK_SIZE, NULL, 5, NULL);
xTaskCreate(uart_read_task, "uart_read_task", 2048, NULL, 10, NULL); //xTaskCreate(uart_read_task, "uart_read_task", 2048, NULL, 10, NULL);
xTaskCreate(sht31_sensor_test_task, "sht31_sensor_test_task", 2048, NULL, 10, NULL); xTaskCreate(sht31_sensor_test_task, "sht31_sensor_test_task", 2048, NULL, 10, NULL);
//vTaskStartScheduler();
} }
+17 -1
View File
@@ -9,20 +9,36 @@
esp_err_t wifi_init(void) { esp_err_t wifi_init(void) {
tcpip_adapter_init(); tcpip_adapter_init();
ESP_ERROR_CHECK(esp_event_loop_create_default()); ESP_ERROR_CHECK(esp_event_loop_create_default());
wifi_init_config_t cfg = WIFI_INIT_CONFIG_DEFAULT(); wifi_init_config_t cfg = WIFI_INIT_CONFIG_DEFAULT();
ESP_ERROR_CHECK(esp_wifi_init(&cfg)); ESP_ERROR_CHECK(esp_wifi_init(&cfg));
ESP_ERROR_CHECK(esp_wifi_set_mode(WIFI_MODE_STA)); ESP_ERROR_CHECK(esp_wifi_set_mode(WIFI_MODE_STA));
wifi_config_t sta_config = { wifi_config_t sta_config = {
.sta = { .sta = {
.ssid = CONFIG_ESP_WIFI_SSID, .ssid = CONFIG_ESP_WIFI_SSID,
.password = CONFIG_ESP_WIFI_PASSWORD, .password = CONFIG_ESP_WIFI_PASSWORD,
}, },
}; };
ESP_ERROR_CHECK(esp_wifi_set_config(ESP_IF_WIFI_STA, &sta_config)); ESP_ERROR_CHECK(esp_wifi_set_config(ESP_IF_WIFI_STA, &sta_config));
ESP_ERROR_CHECK(esp_wifi_start()); ESP_ERROR_CHECK(esp_wifi_start());
ESP_ERROR_CHECK(esp_wifi_connect()); ESP_ERROR_CHECK(esp_wifi_connect());
// Enable power saving
ESP_ERROR_CHECK(esp_wifi_set_ps(WIFI_PS_MIN_MODEM));
return ESP_OK; return ESP_OK;
} }
esp_err_t wifi_sleep() {
/*
// Enter light sleep mode
wifi_fpm_open(); // Enable modem sleep
wifi_fpm_do_sleep(0xFFFFFFF); // Enter sleep mode indefinitely
// The system will wake up when an interrupt occurs
wifi_fpm_close(); // Close modem sleep mode after waking up
*/
return ESP_OK;
}
+5 -5
View File
@@ -108,9 +108,9 @@ CONFIG_ESP8266_NMI_WDT=y
# CONFIG_ESP8266_XTAL_FREQ_40 is not set # CONFIG_ESP8266_XTAL_FREQ_40 is not set
CONFIG_ESP8266_XTAL_FREQ_26=y CONFIG_ESP8266_XTAL_FREQ_26=y
CONFIG_ESP8266_XTAL_FREQ=26 CONFIG_ESP8266_XTAL_FREQ=26
CONFIG_ESP8266_DEFAULT_CPU_FREQ_80=y # CONFIG_ESP8266_DEFAULT_CPU_FREQ_80 is not set
# CONFIG_ESP8266_DEFAULT_CPU_FREQ_160 is not set CONFIG_ESP8266_DEFAULT_CPU_FREQ_160=y
CONFIG_ESP8266_DEFAULT_CPU_FREQ_MHZ=80 CONFIG_ESP8266_DEFAULT_CPU_FREQ_MHZ=160
CONFIG_ESP_FILENAME_MACRO_NO_PATH=y CONFIG_ESP_FILENAME_MACRO_NO_PATH=y
# CONFIG_ESP_FILENAME_MACRO_RAW is not set # CONFIG_ESP_FILENAME_MACRO_RAW is not set
# CONFIG_ESP_FILENAME_MACRO_NULL is not set # CONFIG_ESP_FILENAME_MACRO_NULL is not set
@@ -141,11 +141,11 @@ CONFIG_ESP8266_WIFI_RX_BUFFER_NUM=16
CONFIG_ESP8266_WIFI_LEFT_CONTINUOUS_RX_BUFFER_NUM=16 CONFIG_ESP8266_WIFI_LEFT_CONTINUOUS_RX_BUFFER_NUM=16
CONFIG_ESP8266_WIFI_RX_PKT_NUM=7 CONFIG_ESP8266_WIFI_RX_PKT_NUM=7
CONFIG_ESP8266_WIFI_TX_PKT_NUM=6 CONFIG_ESP8266_WIFI_TX_PKT_NUM=6
CONFIG_ESP8266_WIFI_NVS_ENABLED=y # CONFIG_ESP8266_WIFI_NVS_ENABLED is not set
CONFIG_ESP8266_WIFI_CONNECT_OPEN_ROUTER_WHEN_PWD_IS_SET=y CONFIG_ESP8266_WIFI_CONNECT_OPEN_ROUTER_WHEN_PWD_IS_SET=y
CONFIG_ESP8266_WIFI_ENABLE_WPA3_SAE=y CONFIG_ESP8266_WIFI_ENABLE_WPA3_SAE=y
# CONFIG_ESP8266_WIFI_DEBUG_LOG_ENABLE is not set # CONFIG_ESP8266_WIFI_DEBUG_LOG_ENABLE is not set
CONFIG_ESP_PHY_CALIBRATION_AND_DATA_STORAGE=y # CONFIG_ESP_PHY_CALIBRATION_AND_DATA_STORAGE is not set
# CONFIG_ESP_PHY_INIT_DATA_IN_PARTITION is not set # CONFIG_ESP_PHY_INIT_DATA_IN_PARTITION is not set
CONFIG_ESP_PHY_INIT_DATA_VDD33_CONST=33 CONFIG_ESP_PHY_INIT_DATA_VDD33_CONST=33
CONFIG_ESP8266_PHY_MAX_WIFI_TX_POWER=20 CONFIG_ESP8266_PHY_MAX_WIFI_TX_POWER=20