Skip to content

Commit c1bbcc4

Browse files
committed
Implement status function
1 parent 0855c39 commit c1bbcc4

File tree

2 files changed

+7
-5
lines changed

2 files changed

+7
-5
lines changed

libraries/WiFi/src/WiFi.cpp

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -35,12 +35,14 @@ int arduino::WiFiClass::begin(char* ssid, const char *passphrase) {
3535
scanNetworks();
3636
// use scan result to populate security field
3737
if (!isVisible(ssid)) {
38-
return WL_CONNECT_FAILED;
38+
_currentNetworkStatus = WL_CONNECT_FAILED;
39+
return _currentNetworkStatus;
3940
}
4041

4142
nsapi_error_t ret = wifi_if->connect(ssid, passphrase, ap_list[connected_ap].get_security());
4243

43-
return ret == NSAPI_ERROR_OK ? WL_CONNECTED : WL_CONNECT_FAILED;
44+
_currentNetworkStatus = ret == NSAPI_ERROR_OK ? WL_CONNECTED : WL_CONNECT_FAILED;
45+
return _currentNetworkStatus;
4446
}
4547

4648
int arduino::WiFiClass::beginAP(const char* ssid, const char *passphrase, uint8_t channel) {
@@ -183,9 +185,8 @@ int32_t arduino::WiFiClass::RSSI() {
183185
return wifi_if->get_rssi();
184186
}
185187

186-
uint8_t arduino::WiFiClass::status() {
187-
// @todo: fix
188-
return WL_CONNECTED;
188+
uint8_t arduino::WiFiClass::status() {
189+
return _currentNetworkStatus;
189190
}
190191

191192
uint8_t arduino::WiFiClass::encryptionType() {

libraries/WiFi/src/WiFi.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -310,6 +310,7 @@ class WiFiClass
310310
bool isVisible(char* ssid);
311311
arduino::IPAddress ipAddressFromSocketAddress(SocketAddress socketAddress);
312312
char* _ssid;
313+
wl_status_t _currentNetworkStatus = WL_IDLE_STATUS;
313314
WiFiInterface* wifi_if;
314315
voidPrtFuncPtr cb;
315316
WiFiAccessPoint* ap_list = NULL;

0 commit comments

Comments
 (0)