This commit is contained in:
leo 2022-03-29 23:17:44 +02:00
parent 4f81adb83a
commit df6f7bd781
Signed by: leo
GPG Key ID: 0DD993BFB2B307DB
5 changed files with 25 additions and 7 deletions

View File

@ -21,8 +21,8 @@ static void wifi_event_handler(void* arg, esp_event_base_t event_base,int32_t ev
void wifi_init_softap(wifi_config_t wifi_config){ void wifi_init_softap(wifi_config_t wifi_config){
ESP_ERROR_CHECK(esp_netif_init()); //ESP_ERROR_CHECK(esp_netif_init());
ESP_ERROR_CHECK(esp_event_loop_create_default()); //ESP_ERROR_CHECK(esp_event_loop_create_default());
esp_netif_create_default_wifi_ap(); esp_netif_create_default_wifi_ap();
wifi_init_config_t cfg = WIFI_INIT_CONFIG_DEFAULT(); wifi_init_config_t cfg = WIFI_INIT_CONFIG_DEFAULT();

View File

@ -1,6 +1,7 @@
# Default nvs configuration # Default nvs configuration
key,type,encoding,value key,type,encoding,value
main,namespace,, main,namespace,,
name,data,string,CO2Sense
wireless_conf,data,binary,00000001 wireless_conf,data,binary,00000001
sensor_conf,data,binary,00000000 sensor_conf,data,binary,00000000
led1_conf,data,hex2bin,0400DC051027640001FF led1_conf,data,hex2bin,0400DC051027640001FF

1 # Default nvs configuration
2 key,type,encoding,value
3 main,namespace,,
4 name,data,string,CO2Sense
5 wireless_conf,data,binary,00000001
6 sensor_conf,data,binary,00000000
7 led1_conf,data,hex2bin,0400DC051027640001FF

View File

@ -11,6 +11,7 @@
#include "esp_wifi.h" #include "esp_wifi.h"
#include "esp_log.h" #include "esp_log.h"
#include "esp_vfs_fat.h" #include "esp_vfs_fat.h"
#include "mdns.h"
#include "APlib.h" #include "APlib.h"
#include "HTTPServe.h" #include "HTTPServe.h"
@ -34,11 +35,17 @@ void app_main(void){
// init LEDs driver // init LEDs driver
led_disp_config_t* led_configs = generate_led_conf(nvs_handle,LED_NUMBER); led_disp_config_t* led_configs = generate_led_conf(nvs_handle,LED_NUMBER);
init_led_driver(led_configs, LED_NUMBER); init_led_driver(led_configs, LED_NUMBER);
// init wifi AP (and nvs)
wifi_config_t wifi_config = wifi_config_generator("CO2Sense","testtest",1);
wifi_init_softap(wifi_config); // init wifi AP
wifi_config_t wifi_config = wifi_config_generator("CO2Sense","testtest",1);
ESP_ERROR_CHECK(esp_netif_init());
ESP_ERROR_CHECK(esp_event_loop_create_default());
// start avahi
init_avahi(nvs_handle);
wifi_init_softap(wifi_config);
// mount http server fat partition // mount http server fat partition
const esp_vfs_fat_mount_config_t mount_config = { const esp_vfs_fat_mount_config_t mount_config = {
@ -119,14 +126,23 @@ void init_nvs(void){
ret = nvs_flash_init(); ret = nvs_flash_init();
} }
ESP_ERROR_CHECK(ret); ESP_ERROR_CHECK(ret);
}
void init_avahi(nvs_handle_t nvs){
ESP_ERROR_CHECK(mdns_init());
char hostname[16];
size_t buff_size = sizeof(hostname);
ESP_ERROR_CHECK(nvs_get_str(nvs, "name", &hostname[0], &buff_size));
ESP_LOGI("avahi", "hosname : %s", hostname);
ESP_ERROR_CHECK(mdns_hostname_set(hostname));
ESP_ERROR_CHECK(mdns_instance_name_set(hostname));
} }
led_disp_config_t* generate_led_conf(nvs_handle_t nvs, unsigned int nb){ led_disp_config_t* generate_led_conf(nvs_handle_t nvs, unsigned int nb){
led_disp_config_t* led_configs = malloc(nb * sizeof(led_disp_config_t)); led_disp_config_t* led_configs = malloc(nb * sizeof(led_disp_config_t));
size_t conf_size = sizeof(led_disp_config_t); size_t conf_size = sizeof(led_disp_config_t);
for(int i = 0; i < nb; i++){ for(int i = 0; i < nb; i++){
char key[15]; char key[16];
sprintf(key, "led%i_conf", i+1); sprintf(key, "led%i_conf", i+1);
ESP_ERROR_CHECK(nvs_get_blob(nvs, key, &led_configs[i], &conf_size)); ESP_ERROR_CHECK(nvs_get_blob(nvs, key, &led_configs[i], &conf_size));
} }

View File

@ -3,4 +3,5 @@
void fetch_sensor_task(void* pvParameters); void fetch_sensor_task(void* pvParameters);
void init_nvs(void); void init_nvs(void);
void init_avahi(nvs_handle_t nvs);
led_disp_config_t* generate_led_conf(nvs_handle_t nvs, unsigned int nb); led_disp_config_t* generate_led_conf(nvs_handle_t nvs, unsigned int nb);

BIN
nvs.bin

Binary file not shown.