4.0 KiB
This document was generated from file
ImprovWiFiLibrary.hat 3/30/2023, 7:34:30 PM
ImprovWiFi
class ImprovWiFi /* line 37 */
Improv WiFi class
Description
Handles the Improv WiFi Serial protocol (https://www.improv-wifi.com/serial/)
Example
Simple example of using ImprovWiFi lib. A complete one can be seen in examples/ folder.
#include <ImprovWiFiLibrary.h>
ImprovWiFi improvSerial(&Serial);
void setup() {
improvSerial.setDeviceInfo("My-Device-9a4c2b", "2.1.5", "My Device");
}
void loop() {
improvSerial.handleSerial();
}
Constructors
💡 ImprovWiFi(Stream *serial)
ImprovWiFi(Stream *serial) /* line 75 */
Create an instance of ImprovWiFi
Parameters
serial- Pointer to stream object used to handle requests, for the most cases useSerial
Type definition
🔘 typedef void(OnImprovError)(ImprovTypes::Error)
typedef void(OnImprovError)(ImprovTypes::Error) /* line 87 */
Callback function called when any error occurs during the protocol handling or wifi connection.
🔘 typedef void(OnImprovConnected)(const char *ssid, const char *password)
typedef void(OnImprovConnected)(const char *ssid, const char *password) /* line 92 */
Callback function called when the attempt of wifi connection is successful. It informs the SSID and Password used to that, it's a perfect time to save them for further use.
🔘 typedef bool(CustomConnectWiFi)(const char *ssid, const char *password)
typedef bool(CustomConnectWiFi)(const char *ssid, const char *password) /* line 97 */
Callback function to customize the wifi connection if you needed. Optional.
Methods
Ⓜ️ void handleSerial()
void handleSerial() /* line 107 */
Check if a communication via serial is happening. Put this call on your loop().
Ⓜ️ void setDeviceInfo(const char *firmwareName, const char *firmwareVersion, const char *deviceName, const char *deviceUrl)
void setDeviceInfo(const char *firmwareName, const char *firmwareVersion, const char *deviceName, const char *deviceUrl) /* line 122 */
Set details of your device.
Parameters
firmwareName- Firmware namefirmwareVersion- Firmware versiondeviceName- Your device namedeviceUrl- The local URL to access your device. A placeholder called {LOCAL_IPV4} is available to form elaboreted URLs. E.g.http://{LOCAL_IPV4}?name=Guest. There is overloaded method withoutdeviceUrl, in this case the URL will be the local IP.
Ⓜ️ void onImprovError(OnImprovError *errorCallback)
void onImprovError(OnImprovError *errorCallback) /* line 128 */
Method to set the typedef OnImprovError callback.
Ⓜ️ void onImprovConnected(OnImprovConnected *connectedCallback)
void onImprovConnected(OnImprovConnected *connectedCallback) /* line 133 */
Method to set the typedef OnImprovConnected callback.
Ⓜ️ void setCustomTryConnectToWiFi(CustomConnectWiFi *connectWiFiCallBack)
void setCustomTryConnectToWiFi(CustomConnectWiFi *connectWiFiCallBack) /* line 138 */
Method to set the typedef CustomConnectWiFi callback.
Ⓜ️ bool tryConnectToWifi(const char *ssid, const char *password)
bool tryConnectToWifi(const char *ssid, const char *password) /* line 145 */
Default method to connect in a WiFi network.
It waits DELAY_MS_WAIT_WIFI_CONNECTION milliseconds (default 500) during MAX_ATTEMPTS_WIFI_CONNECTION (default 20) until it get connected. If it does not happen, an error ERROR_UNABLE_TO_CONNECT is thrown.
Ⓜ️ bool isConnected()
bool isConnected() /* line 151 */
Check if connection is established using WiFi.status() == WL_CONNECTED