Fri, 20 Oct 2023 15:57:56 +0200
Added framework for the DCF77 transmitter. Added two debug LEDs.
0
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
1 | /** |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
2 | * @file task_wifi.h |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
3 | * @brief WiFi task. Connect to the known AP with the strongest signal. |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
4 | */ |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
5 | |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
6 | #ifndef _TASK_WIFI_H |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
7 | #define _TASK_WIFI_H |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
8 | |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
9 | |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
10 | /** |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
11 | * @brief Structure containing the information of the driver task. |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
12 | */ |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
13 | typedef struct { |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
14 | bool STA_connected; ///< Connected to AP as station. |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
15 | bool STA_online; ///< Connected and online. |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
16 | char STA_ssid[33]; ///< Connected to this SSID. |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
17 | char STA_bssid[18]; ///< Connected to this BSSID. |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
18 | int8_t STA_rssi; ///< Signal strength. |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
19 | uint8_t STA_channel; ///< Connected channel. |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
20 | char STA_ip[17]; ///< IP address. |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
21 | char STA_nm[17]; ///< IP netmask. |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
22 | char STA_gw[17]; ///< IP gateway. |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
23 | } WIFI_State; |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
24 | |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
25 | |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
26 | |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
27 | /** |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
28 | * @brief Test if Wifi is ready and connected |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
29 | * @return Return true is connected and we have an IP address. |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
30 | */ |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
31 | bool ready_WiFi(void); |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
32 | |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
33 | |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
34 | /** |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
35 | * @brief Request a WiFi connection. |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
36 | */ |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
37 | void request_WiFi(void); |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
38 | |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
39 | |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
40 | /** |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
41 | * @brief Request WiFi disconnect. |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
42 | */ |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
43 | void disconnect_WiFi(void); |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
44 | |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
45 | |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
46 | /** |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
47 | * @brief Main task for the wifi_manager |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
48 | * @param pvParameters Parameters for the task. |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
49 | */ |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
50 | void task_wifi(void *pvParameters); |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
51 | |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
52 | |
913eb9ca40b1
Initial checkin, WiFi connects and SNTP timesync works.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
53 | #endif |