@@ -45,8 +45,7 @@ const uint8_t WIFI_RETRY_OFFSET_SEC = WIFI_RETRY_SECONDS; // seconds
45
45
#include < AddrList.h> // IPv6 DualStack
46
46
#endif // LWIP_IPV6=1
47
47
48
- int WifiGetRssiAsQuality (int rssi)
49
- {
48
+ int WifiGetRssiAsQuality (int rssi) {
50
49
int quality = 0 ;
51
50
52
51
if (rssi <= -100 ) {
@@ -59,6 +58,32 @@ int WifiGetRssiAsQuality(int rssi)
59
58
return quality;
60
59
}
61
60
61
+ // 0 1 2 3 4
62
+ const char kWifiEncryptionTypes [] PROGMEM = " OPEN|WEP|WPA/PSK|WPA2/PSK|WPA/WPA2/PSK"
63
+ #ifdef ESP32
64
+ // 5 6 7 8
65
+ " |WPA2ENTERPRISE|WPA3/PSK|WPA2/WPA3/PSK|WAPI/PSK"
66
+ #endif // ESP32
67
+ ;
68
+
69
+ String WifiEncryptionType (uint32_t i) {
70
+ #ifdef ESP8266
71
+ // Reference. WiFi.encryptionType =
72
+ // 2 : ENC_TYPE_TKIP - WPA / PSK
73
+ // 4 : ENC_TYPE_CCMP - WPA2 / PSK
74
+ // 5 : ENC_TYPE_WEP - WEP
75
+ // 7 : ENC_TYPE_NONE - open network
76
+ // 8 : ENC_TYPE_AUTO - WPA / WPA2 / PSK
77
+ uint8_t typea[] = { 0 ,2 ,0 ,3 ,1 ,0 ,0 ,4 };
78
+ uint32_t type = typea[WiFi.encryptionType (i) -1 &7 ];
79
+ #else
80
+ uint32_t type = WiFi.encryptionType (i);
81
+ #endif
82
+ char stemp1[20 ];
83
+ GetTextIndexed (stemp1, sizeof (stemp1), type, kWifiEncryptionTypes );
84
+ return stemp1;
85
+ }
86
+
62
87
bool WifiConfigCounter (void )
63
88
{
64
89
if (Wifi.config_counter ) {
@@ -388,7 +413,8 @@ void WifiBeginAfterScan(void)
388
413
WiFi.channel (indexes[i]),
389
414
WiFi.RSSI (indexes[i]),
390
415
WifiGetRssiAsQuality (WiFi.RSSI (indexes[i])),
391
- GetTextIndexed (stemp1, sizeof (stemp1), WiFi.encryptionType (indexes[i]), kWifiEncryptionTypes ));
416
+ // GetTextIndexed(stemp1, sizeof(stemp1), WiFi.encryptionType(indexes[i]), kWifiEncryptionTypes));
417
+ WifiEncryptionType (indexes[i]).c_str ());
392
418
MqttPublishPrefixTopicRulesProcess_P (RESULT_OR_STAT, PSTR (D_CMND_WIFISCAN));
393
419
}
394
420
} else if (9 == Wifi.scan_state ) {
0 commit comments