Sat, 06 Jun 2020 13:28:46 +0200
Changed the recipe database so that it is expandable, version 2. More mash fields and allow 16 steps. Allow 20 Additions. Removed separate mash steps from the state machine, the steps are moved to the runtime data. There is no fixed step number for mashout anymore. There is no fixed step for mash-in anymore, just use the first step and heat to the infusion temperature. After malt add, switch to the normal step temperature. Implemented decoction steps.
/** * @file task_wifi.h * @brief WiFi task. Connects to a known Access Point. If we know more then * one AP, try to connect all of them until it succeeds (Not yet written). */ #ifndef _TASK_WIFI_H #define _TASK_WIFI_H /** * @brief Defines the maximum number of access points that can be scanned. * * To save memory and avoid nasty out of memory errors, * we can limit the number of APs detected in a wifi scan. * The display can handle 7 entries, allow a few more. */ #define MAX_AP_NUM 10 /** * @brief Defines access point's maximum number of clients. */ #define AP_MAX_CONNECTIONS 4 /** * @brief Structure containing the information of the driver task. */ typedef struct { bool AP_active; ///< Is the AP active. uint8_t AP_clients; ///< Connected AP clients. bool STA_connected; ///< Connected to AP as station. bool STA_online; ///< Connected and online. char STA_ssid[33]; ///< Connected to this SSID. int8_t STA_rssi; ///< Signal strength. char STA_ip[17]; ///< IP address. char STA_nm[17]; ///< IP netmask. char STA_gw[17]; ///< IP gateway. } WIFI_State; /** * @brief Update reason codes. */ typedef enum update_reason_code_t { UPDATE_CONNECTION_OK = 0, UPDATE_FAILED_ATTEMPT = 1, UPDATE_USER_DISCONNECT = 2, UPDATE_LOST_CONNECTION = 3 } update_reason_code_t; /** * @brief Main task for the wifi_manager */ void task_wifi(void *); /** * @brief WiFi setup, init screens. */ bool WiFi_Init(void); /** * @brief WiFi setup, loop screens. */ bool WiFi_Loop(void); #endif