Bug bounty: Kill the 'Cyan flash of death'

@BDub Hmm, here we go…

Scan Started

30001000151591084105109111116104121323832831169711400000000000000000096517523224171 || SSID: Timothy & Star || RSSI: 0x97/-53dB || Loop: 0

20001000151401011610510998951031171011151160000000000000000000000102517523224171 || SSID: timb_guest || RSSI: 0x97/-53dB || Loop: 1

1000100014763108011110710111432721051081083270971141090000000000000000003082245451 || SSID: Poker Hill Farm || RSSI: 0x93/-55dB || Loop: 2

00001000000000000000000000000000000000000000000000 || SSID: || RSSI: 0x0/-128dB || Loop: 3

That -53dB for my SSID—Timothy & Star—seems pretty accurate to me (selected client is the Core):

Yeah, as you can see I’ve got it printing out in multiple formats. Looking at your code, you might be over-engeineering it a bit (or just tired)! :wink: Here’s my code:

void loop() {

    unsigned char wlan_results_raw[49];

    char ssid_name[31];

    wlan_ioctl_get_scan_results(0, wlan_results_raw);

    for (int i = 0; i <= 49; i++) {
        Serial.print(wlan_results_raw[i]);
    }
    for (int i = 12; i <=43; i++) {
        int arrayPos = i - 12;
        ssid_name[arrayPos] = wlan_results_raw[i];
    }
    
    int rssi_raw = wlan_results_raw[8];
    int rssi_db = (rssi_raw >> 1) - 128;
    
    Serial.print(" || SSID: ");
    Serial.print(ssid_name);
    Serial.print(" || RSSI: 0x");
    Serial.print(rssi_raw, HEX);
    Serial.print("/");
    Serial.print(rssi_db);
    Serial.print("dB");
    Serial.print(" || Loop: ");
    Serial.println(loopNum);
    delay(1000);
    loopNum++;
    
}