diff --git a/mongoose.h b/mongoose.h index 79966047..bfb5c9db 100644 --- a/mongoose.h +++ b/mongoose.h @@ -892,8 +892,8 @@ struct timeval { #define MG_SET_MAC_ADDRESS(mac) #endif -#ifndef MG_SET_WIFI_CREDS -#define MG_SET_WIFI_CREDS(ssid, pass) +#ifndef MG_SET_WIFI_CONFIG +#define MG_SET_WIFI_CONFIG(data) #endif #ifndef MG_ENABLE_TCPIP_PRINT_DEBUG_STATS @@ -2995,21 +2995,23 @@ struct mg_tcpip_driver_cyw_data { bool apmode; // start in AP mode; 'false' starts connection to 'ssid' if not NULL }; -//#define MG_TCPIP_DRIVER_INIT(mgr) \ -// do { \ -// static struct mg_tcpip_driver_cyw_data driver_data_; \ -// static struct mg_tcpip_if mif_; \ -// MG_SET_WIFI_CONFIG(&driver_data_); \ -// mif_.ip = MG_TCPIP_IP; \ -// mif_.mask = MG_TCPIP_MASK; \ -// mif_.gw = MG_TCPIP_GW; \ -// mif_.driver = &mg_tcpip_driver_pico_w; \ -// mif_.driver_data = &driver_data_; \ -// mif_.recv_queue.size = 8192; \ -// mif_.mac[0] = 2; /* MAC read from OTP at driver init */ \ -// mg_tcpip_init(mgr, &mif_); \ -// MG_INFO(("Driver: cyw, MAC: %M", mg_print_mac, mif_.mac)); \ -// } while (0) +#if 0 +#define MG_TCPIP_DRIVER_INIT(mgr) \ + do { \ + static struct mg_tcpip_driver_cyw_data driver_data_; \ + static struct mg_tcpip_if mif_; \ + MG_SET_WIFI_CONFIG(&driver_data_); \ + mif_.ip = MG_TCPIP_IP; \ + mif_.mask = MG_TCPIP_MASK; \ + mif_.gw = MG_TCPIP_GW; \ + mif_.driver = &mg_tcpip_driver_pico_w; \ + mif_.driver_data = &driver_data_; \ + mif_.recv_queue.size = 8192; \ + mif_.mac[0] = 2; /* MAC read from OTP at driver init */ \ + mg_tcpip_init(mgr, &mif_); \ + MG_INFO(("Driver: cyw, MAC: %M", mg_print_mac, mif_.mac)); \ + } while (0) +#endif #endif diff --git a/src/config.h b/src/config.h index 5236da17..cb7b0150 100644 --- a/src/config.h +++ b/src/config.h @@ -174,8 +174,8 @@ #define MG_SET_MAC_ADDRESS(mac) #endif -#ifndef MG_SET_WIFI_CREDS -#define MG_SET_WIFI_CREDS(ssid, pass) +#ifndef MG_SET_WIFI_CONFIG +#define MG_SET_WIFI_CONFIG(data) #endif #ifndef MG_ENABLE_TCPIP_PRINT_DEBUG_STATS diff --git a/src/drivers/cyw.h b/src/drivers/cyw.h index 91e33a60..4eb7305f 100644 --- a/src/drivers/cyw.h +++ b/src/drivers/cyw.h @@ -32,20 +32,22 @@ struct mg_tcpip_driver_cyw_data { bool apmode; // start in AP mode; 'false' starts connection to 'ssid' if not NULL }; -//#define MG_TCPIP_DRIVER_INIT(mgr) \ -// do { \ -// static struct mg_tcpip_driver_cyw_data driver_data_; \ -// static struct mg_tcpip_if mif_; \ -// MG_SET_WIFI_CONFIG(&driver_data_); \ -// mif_.ip = MG_TCPIP_IP; \ -// mif_.mask = MG_TCPIP_MASK; \ -// mif_.gw = MG_TCPIP_GW; \ -// mif_.driver = &mg_tcpip_driver_pico_w; \ -// mif_.driver_data = &driver_data_; \ -// mif_.recv_queue.size = 8192; \ -// mif_.mac[0] = 2; /* MAC read from OTP at driver init */ \ -// mg_tcpip_init(mgr, &mif_); \ -// MG_INFO(("Driver: cyw, MAC: %M", mg_print_mac, mif_.mac)); \ -// } while (0) +#if 0 +#define MG_TCPIP_DRIVER_INIT(mgr) \ + do { \ + static struct mg_tcpip_driver_cyw_data driver_data_; \ + static struct mg_tcpip_if mif_; \ + MG_SET_WIFI_CONFIG(&driver_data_); \ + mif_.ip = MG_TCPIP_IP; \ + mif_.mask = MG_TCPIP_MASK; \ + mif_.gw = MG_TCPIP_GW; \ + mif_.driver = &mg_tcpip_driver_pico_w; \ + mif_.driver_data = &driver_data_; \ + mif_.recv_queue.size = 8192; \ + mif_.mac[0] = 2; /* MAC read from OTP at driver init */ \ + mg_tcpip_init(mgr, &mif_); \ + MG_INFO(("Driver: cyw, MAC: %M", mg_print_mac, mif_.mac)); \ + } while (0) +#endif #endif diff --git a/tutorials/pico-sdk/pico-2-w-picosdk-baremetal-builtin-ap/mongoose_config.h b/tutorials/pico-sdk/pico-2-w-picosdk-baremetal-builtin-ap/mongoose_config.h index 5b7630ac..0fe3cae8 100644 --- a/tutorials/pico-sdk/pico-2-w-picosdk-baremetal-builtin-ap/mongoose_config.h +++ b/tutorials/pico-sdk/pico-2-w-picosdk-baremetal-builtin-ap/mongoose_config.h @@ -17,10 +17,13 @@ // MAC address is read from OTP by the driver -// Set your Wi-Fi credentials -// Using a build-time constant: -// #define MG_SET_WIFI_CREDS(ssid, pass) do { *ssid = "this"; *pass = "that"; } while (0) -// +// Set your Wi-Fi configuration +/* Using a build-time constant: +#define MG_SET_WIFI_CONFIG(data) do { \ + ((struct mg_tcpip_driver_pico_w_data *)data)->ssid = "this"; \ + ((struct mg_tcpip_driver_pico_w_data *)data)->pass = "that"; \ + } while (0) +*/ // Using a custom function: -extern void main_setcreds(char **ssid, char **pass); -#define MG_SET_WIFI_CREDS(ssid, pass) main_setcreds(ssid, pass) +extern void main_setconfig(void *data); +#define MG_SET_WIFI_CONFIG(data) main_setconfig(data)