main/task_wifi.h

Fri, 20 Oct 2023 15:57:56 +0200

author
Michiel Broek <mbroek@mbse.eu>
date
Fri, 20 Oct 2023 15:57:56 +0200
changeset 1
86b275481021
parent 0
913eb9ca40b1
permissions
-rw-r--r--

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

mercurial