wifi/wifi_scan/main.c
/*
* EVALUATION AND USE OF THIS SOFTWARE IS SUBJECT TO THE TERMS AND
* CONDITIONS OF THE CONTROLLING LICENSE AGREEMENT FOUND AT LICENSE.md
* IN THIS SDK. IF YOU DO NOT AGREE TO THE LICENSE TERMS AND CONDITIONS,
* PLEASE RETURN ALL SOURCE FILES TO SILICON LABORATORIES.
* (c) Copyright 2018, Silicon Laboratories Inc. All rights reserved.
*/
/* Documentation for this app is available online.
* See https://docs.silabs.com/gecko-os/4/standard/latest/sdk/examples/wifi/scan
*/
#include "gos.h"
#define SCAN_PERIOD_MS (15000) // ms
#define SCAN_INITIAL_DELAY_MS (100) //ms
#define APPLICATION_START_LINE "\r\nWifi Scan example starting ..."
/*************************************************************************************************/
void gos_app_init(void)
{
GOS_LOG(APPLICATION_START_LINE);
gos_rtos_delay_milliseconds(SCAN_INITIAL_DELAY_MS);
}
/*************************************************************************************************/
static void scan_event_handler(void *arg)
{
gos_result_t ret;
gos_scan_result_t *scan_results;
int i = 0;
GOS_LOG( "Scanning for Wi-Fi networks ..." );
{
GOS_LOG("Failed to issue scan: %d", ret);
return;
}
GOS_LOG(" # Type BSSID RSSI Rate Chan Security SSID" );
GOS_LOG("--------------------------------------------------------------------" );
{
print_scan_result(i, result);
}
}
/*************************************************************************************************/
{
char buffer[196], mac[32];
gos_fpi_str_buffer_t data_rate_str;
char *ptr = buffer;
ptr += sprintf(ptr, " %2d", index);
ptr += sprintf(ptr, " %-5s", data_rate_str);
"Unknown" );
ptr += sprintf(ptr, " ");
{
}
else
{
strcpy(ptr, "<ssid hidden>");
}
GOS_LOG("%s", buffer);
}