Skip to content

Commit a1fa79a

Browse files
committed
Added check if wifi shield is not present
1 parent 28a4537 commit a1fa79a

File tree

4 files changed

+25
-16
lines changed

4 files changed

+25
-16
lines changed

WiFi/WiFi.cpp

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -150,12 +150,13 @@ uint8_t WiFiClass::encryptionType()
150150
}
151151

152152

153-
uint8_t WiFiClass::scanNetworks()
153+
int8_t WiFiClass::scanNetworks()
154154
{
155155
uint8_t attempts = 10;
156156
uint8_t numOfNetworks = 0;
157157

158-
WiFiDrv::startScanNetworks();
158+
if (WiFiDrv::startScanNetworks() == WL_FAILURE)
159+
return WL_FAILURE;
159160
do
160161
{
161162
delay(2000);

WiFi/WiFi.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,7 @@ class WiFiClass
123123
*
124124
* return: Number of discovered networks
125125
*/
126-
uint8_t scanNetworks();
126+
int8_t scanNetworks();
127127

128128
/*
129129
* Return the SSID discovered during the network scan.

WiFi/utility/wifi_drv.cpp

Lines changed: 16 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ void WiFiDrv::wifiDriverInit()
5959
SpiDrv::begin();
6060
}
6161

62-
uint8_t WiFiDrv::wifiSetNetwork(char* ssid, uint8_t ssid_len)
62+
int8_t WiFiDrv::wifiSetNetwork(char* ssid, uint8_t ssid_len)
6363
{
6464
WAIT_FOR_SLAVE_SELECT();
6565
// Send Command
@@ -75,13 +75,14 @@ uint8_t WiFiDrv::wifiSetNetwork(char* ssid, uint8_t ssid_len)
7575
if (!SpiDrv::waitResponseCmd(SET_NET_CMD, PARAM_NUMS_1, &_data, &_dataLen))
7676
{
7777
WARN("error waitResponse");
78+
return WL_FAILURE;
7879
}
7980
SpiDrv::spiSlaveDeselect();
8081

8182
return(_data == WIFI_SPI_ACK) ? WL_SUCCESS : WL_FAILURE;
8283
}
8384

84-
uint8_t WiFiDrv::wifiSetPassphrase(char* ssid, uint8_t ssid_len, const char *passphrase, const uint8_t len)
85+
int8_t WiFiDrv::wifiSetPassphrase(char* ssid, uint8_t ssid_len, const char *passphrase, const uint8_t len)
8586
{
8687
WAIT_FOR_SLAVE_SELECT();
8788
// Send Command
@@ -98,13 +99,14 @@ uint8_t WiFiDrv::wifiSetPassphrase(char* ssid, uint8_t ssid_len, const char *pas
9899
if (!SpiDrv::waitResponseCmd(SET_PASSPHRASE_CMD, PARAM_NUMS_1, &_data, &_dataLen))
99100
{
100101
WARN("error waitResponse");
102+
return WL_FAILURE;
101103
}
102104
SpiDrv::spiSlaveDeselect();
103105
return _data;
104106
}
105107

106108

107-
uint8_t WiFiDrv::wifiSetKey(char* ssid, uint8_t ssid_len, uint8_t key_idx, const void *key, const uint8_t len)
109+
int8_t WiFiDrv::wifiSetKey(char* ssid, uint8_t ssid_len, uint8_t key_idx, const void *key, const uint8_t len)
108110
{
109111
WAIT_FOR_SLAVE_SELECT();
110112
// Send Command
@@ -122,12 +124,13 @@ uint8_t WiFiDrv::wifiSetKey(char* ssid, uint8_t ssid_len, uint8_t key_idx, const
122124
if (!SpiDrv::waitResponseCmd(SET_KEY_CMD, PARAM_NUMS_1, &_data, &_dataLen))
123125
{
124126
WARN("error waitResponse");
127+
return WL_FAILURE;
125128
}
126129
SpiDrv::spiSlaveDeselect();
127130
return _data;
128131
}
129132

130-
uint8_t WiFiDrv::disconnect()
133+
int8_t WiFiDrv::disconnect()
131134
{
132135
WAIT_FOR_SLAVE_SELECT();
133136
// Send Command
@@ -142,7 +145,7 @@ uint8_t WiFiDrv::disconnect()
142145
// Wait for reply
143146
uint8_t _data = 0;
144147
uint8_t _dataLen = 0;
145-
uint8_t result = SpiDrv::waitResponseCmd(DISCONNECT_CMD, PARAM_NUMS_1, &_data, &_dataLen);
148+
int8_t result = SpiDrv::waitResponseCmd(DISCONNECT_CMD, PARAM_NUMS_1, &_data, &_dataLen);
146149

147150
SpiDrv::spiSlaveDeselect();
148151

@@ -299,7 +302,7 @@ uint8_t WiFiDrv::getCurrentEncryptionType()
299302
return encType;
300303
}
301304

302-
uint8_t WiFiDrv::startScanNetworks()
305+
int8_t WiFiDrv::startScanNetworks()
303306
{
304307
WAIT_FOR_SLAVE_SELECT();
305308

@@ -312,11 +315,16 @@ uint8_t WiFiDrv::startScanNetworks()
312315
// Wait for reply
313316
uint8_t _data = 0;
314317
uint8_t _dataLen = 0;
315-
uint8_t result = SpiDrv::waitResponseCmd(START_SCAN_NETWORKS, PARAM_NUMS_1, &_data, &_dataLen);
318+
319+
if (!SpiDrv::waitResponseCmd(START_SCAN_NETWORKS, PARAM_NUMS_1, &_data, &_dataLen))
320+
{
321+
WARN("error waitResponse");
322+
return WL_FAILURE;
323+
}
316324

317325
SpiDrv::spiSlaveDeselect();
318326

319-
return result;
327+
return WL_SUCCESS;
320328
}
321329

322330

WiFi/utility/wifi_drv.h

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ class WiFiDrv
5252
* param ssid_len: Lenght of ssid string.
5353
* return: WL_SUCCESS or WL_FAILURE
5454
*/
55-
static uint8_t wifiSetNetwork(char* ssid, uint8_t ssid_len);
55+
static int8_t wifiSetNetwork(char* ssid, uint8_t ssid_len);
5656

5757
/* Start Wifi connection with passphrase
5858
* the most secure supported mode will be automatically selected
@@ -64,7 +64,7 @@ class WiFiDrv
6464
* param len: Lenght of passphrase string.
6565
* return: WL_SUCCESS or WL_FAILURE
6666
*/
67-
static uint8_t wifiSetPassphrase(char* ssid, uint8_t ssid_len, const char *passphrase, const uint8_t len);
67+
static int8_t wifiSetPassphrase(char* ssid, uint8_t ssid_len, const char *passphrase, const uint8_t len);
6868

6969
/* Start Wifi connection with WEP encryption.
7070
* Configure a key into the device. The key type (WEP-40, WEP-104)
@@ -77,14 +77,14 @@ class WiFiDrv
7777
* param len: Lenght of key string.
7878
* return: WL_SUCCESS or WL_FAILURE
7979
*/
80-
static uint8_t wifiSetKey(char* ssid, uint8_t ssid_len, uint8_t key_idx, const void *key, const uint8_t len);
80+
static int8_t wifiSetKey(char* ssid, uint8_t ssid_len, uint8_t key_idx, const void *key, const uint8_t len);
8181

8282
/*
8383
* Disconnect from the network
8484
*
8585
* return: WL_SUCCESS or WL_FAILURE
8686
*/
87-
static uint8_t disconnect();
87+
static int8_t disconnect();
8888

8989
/*
9090
* Disconnect from the network
@@ -156,7 +156,7 @@ class WiFiDrv
156156
*
157157
* return: Number of discovered networks
158158
*/
159-
static uint8_t startScanNetworks();
159+
static int8_t startScanNetworks();
160160

161161
/*
162162
* Get the networks available

0 commit comments

Comments
 (0)