Got the post and the internet connecting working
This commit is contained in:
25
src/main.cpp
25
src/main.cpp
@@ -4,11 +4,12 @@
|
||||
#include "lwip/apps/httpd.h"
|
||||
#include "pico/cyw43_arch.h"
|
||||
#include "pico/stdlib.h"
|
||||
#include "webserver.h"
|
||||
#include <cstdint>
|
||||
#include <cstdio>
|
||||
#include <cstring>
|
||||
|
||||
/* void ap_init() {
|
||||
void ap_init() {
|
||||
cyw43_arch_enable_ap_mode("SensorAP", "passwort123", CYW43_AUTH_WPA2_AES_PSK);
|
||||
|
||||
ip_addr_t gw{};
|
||||
@@ -18,7 +19,7 @@
|
||||
|
||||
static dhcp_server_t dhcp_server{};
|
||||
dhcp_server_init(&dhcp_server, &gw, &mask);
|
||||
} */
|
||||
}
|
||||
|
||||
int main() {
|
||||
int ret{};
|
||||
@@ -28,20 +29,19 @@ int main() {
|
||||
httpd_init();
|
||||
|
||||
while (true) {
|
||||
/* memset(saved_ssid, 0, sizeof(saved_ssid));
|
||||
memset(saved_password, 0, sizeof(saved_password));
|
||||
ap_init(); */
|
||||
memset(saved_ssid, 0, sizeof(saved_ssid));
|
||||
memset(saved_password, 0, sizeof(saved_password));
|
||||
ap_init();
|
||||
printf("Return Code: %d\n", ret);
|
||||
|
||||
/* while (saved_ssid[0] == '\0') {
|
||||
cyw43_arch_poll();
|
||||
sleep_ms(100);
|
||||
} */
|
||||
// cyw43_arch_disable_ap_mode();
|
||||
while (saved_ssid[0] == '\0') {
|
||||
cyw43_arch_poll();
|
||||
sleep_ms(100);
|
||||
}
|
||||
cyw43_arch_disable_ap_mode();
|
||||
cyw43_arch_enable_sta_mode();
|
||||
|
||||
ret = cyw43_arch_wifi_connect_timeout_ms("HainerErnst-IoT",
|
||||
"vpUaR68xLZzXanS7",
|
||||
ret = cyw43_arch_wifi_connect_timeout_ms(saved_ssid, saved_password,
|
||||
CYW43_AUTH_WPA2_MIXED_PSK, 10000);
|
||||
if (ret == 0) {
|
||||
break;
|
||||
@@ -56,3 +56,4 @@ int main() {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -5,17 +5,6 @@
|
||||
char saved_ssid[33];
|
||||
char saved_password[65];
|
||||
|
||||
/* static const char *config_handler(int iIndex, int iNumParams, char
|
||||
*pcParam[], char *pcValue[]) { for (int i = 0; i < iNumParams; i++) { if
|
||||
(strcmp(pcParam[i], "ssid") == 0) { strncpy(saved_ssid, pcValue[i], 32);
|
||||
}
|
||||
if (strcmp(pcParam[i], "password") == 0) {
|
||||
strncpy(saved_password, pcValue[i], 64);
|
||||
}
|
||||
}
|
||||
return "/index.html";
|
||||
} */
|
||||
|
||||
err_t httpd_post_begin(void *connection, const char *uri,
|
||||
const char *http_request, u16_t http_request_len,
|
||||
int content_len, char *response_uri,
|
||||
@@ -42,7 +31,7 @@ err_t httpd_post_receive_data(void *connection, struct pbuf *p) {
|
||||
void httpd_post_finished(void *connection, char *response_uri,
|
||||
u16_t response_uri_len) {
|
||||
strncpy(response_uri, "/index.html", response_uri_len);
|
||||
|
||||
|
||||
char *pos = strstr(post_buffer, "ssid=");
|
||||
pos = pos + 5;
|
||||
char *end = strchr(pos, '&');
|
||||
@@ -61,9 +50,5 @@ void httpd_post_finished(void *connection, char *response_uri,
|
||||
strncpy(saved_password, pos2, len2);
|
||||
|
||||
saved_ssid[len] = '\0';
|
||||
saved_password[len] = '\0';
|
||||
saved_password[len2] = '\0';
|
||||
}
|
||||
|
||||
// static const tCGI cgi_handlers[] = {{"/config", config_handler}};
|
||||
|
||||
// void webserver_init(void) { http_set_cgi_handlers(cgi_handlers, 1); }
|
||||
|
||||
Reference in New Issue
Block a user