]> Git Repo - esp-hosted.git/blob - host/linux/host_control/c_support/test.c
Merge branch 'moved_platform_wrapper_files' into 'master'
[esp-hosted.git] / host / linux / host_control / c_support / test.c
1 /*
2  * Espressif Systems Wireless LAN device driver
3  *
4  * Copyright (C) 2015-2020 Espressif Systems (Shanghai) PTE LTD
5  *
6  * This software file (the "File") is distributed by Espressif Systems (Shanghai)
7  * PTE LTD under the terms of the GNU General Public License Version 2, June 1991
8  * (the "License").  You may use, redistribute and/or modify this File in
9  * accordance with the terms and conditions of the License, a copy of which
10  * is available by writing to the Free Software Foundation, Inc.,
11  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or on the
12  * worldwide web at http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt.
13  *
14  * THE FILE IS DISTRIBUTED AS-IS, WITHOUT WARRANTY OF ANY KIND, AND THE
15  * IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE
16  * ARE EXPRESSLY DISCLAIMED.  The License provides additional details about
17  * this warranty disclaimer.
18  */
19
20 #include <string.h>
21 #include <stdlib.h>
22 #include "commands.h"
23 #include "platform_wrapper.h"
24
25 #define MAC_LENGTH      18
26 #define SSID_LENGTH     32
27 #define PWD_LENGTH      64
28
29 #define SUCCESS         0
30 #define FAILURE         -1
31
32 int main()
33 {
34     int mode = 0, count = 0, power_save_mode = 0;
35     esp_hosted_ap_config_t ap_config, softap_config;
36     esp_hosted_wifi_scanlist_t* list = NULL;
37     esp_hosted_wifi_connected_stations_list* stations_list = NULL;
38     char mac[MAC_LENGTH];
39     int ret = wifi_get_mode(&mode);
40     if (ret == SUCCESS) {
41         printf("wifi mode is %d \n",mode);
42     } else {
43         printf("Failed to get wifi mode \n");
44     }
45     mode = WIFI_MODE_STA;
46     ret = wifi_set_mode(mode);
47     if (ret == SUCCESS) {
48         printf("newly set wifi mode %d \n", mode);
49     } else {
50         printf("error in setting mode \n");
51     }
52     ret = wifi_get_mac(mode,mac);
53     if (ret == SUCCESS) {
54         printf("mac address %s \n", mac);
55     } else {
56         printf("Failed to get MAC address \n");
57     }
58     strcpy((char* )&ap_config.ssid ,"xyz");
59     strcpy((char* )&ap_config.pwd ,"xyz123456");
60     strcpy((char* )&ap_config.bssid, "0");
61     ap_config.is_wpa3_supported = false;
62     ap_config.listen_interval = 5;
63     ret = wifi_set_ap_config(ap_config);
64     if (ret == SUCCESS) {
65         printf("Connected to AP \n");
66     } else {
67         printf("Failed to connect with AP \n");
68     }
69     ret = wifi_get_ap_config(&ap_config);
70     if (ret == SUCCESS) {
71         printf("AP's ssid %s \n", ap_config.ssid);
72         printf("AP's bssid i.e. MAC address %s \n", ap_config.bssid);
73         printf("AP's channel number %d \n", ap_config.channel);
74         printf("AP's rssi %d \n", ap_config.rssi);
75         printf("AP's encryption mode %d \n", ap_config.encryption_mode);
76     } else {
77         printf("AP's status %s \n", ap_config.status);
78     }
79     ret = wifi_disconnect_ap();
80     if (ret == SUCCESS) {
81         printf("Disconnected from AP \n");
82     } else {
83         printf("Failed to disconnect from AP \n");
84     }
85     strcpy((char* )&softap_config.ssid, "esp12");
86     strcpy((char* )&softap_config.pwd, "esp123456");
87     softap_config.channel = 1;
88     softap_config.encryption_mode = 3;
89     softap_config.max_connections = 5;
90     softap_config.ssid_hidden = false;
91     softap_config.bandwidth = 2;
92     ret = wifi_set_softap_config(softap_config);
93     if (ret == SUCCESS) {
94         printf("esp32 softAP started \n");
95     } else {
96         printf("Failed to set softAP config \n");
97     }
98     ret = wifi_get_softap_config(&softap_config);
99     if (ret == SUCCESS) {
100         printf("softAP ssid %s \n", softap_config.ssid);
101         printf("softAP pwd %s \n", softap_config.pwd);
102         printf("softAP channel ID %d \n", softap_config.channel);
103         printf("softAP encryption mode %d \n", softap_config.encryption_mode);
104         printf("softAP max connections %d \n", softap_config.max_connections);
105         printf("softAP ssid broadcast status %d \n", softap_config.ssid_hidden);
106         printf("softAP bandwidth mode %d \n", softap_config.bandwidth);
107     } else {
108         printf("Failed to get softAP config \n");
109     }
110     ret = wifi_ap_scan_list(&list, &count);
111     if (ret == SUCCESS) {
112         printf("Number of available APs is %d \n", count);
113         if (count) {
114             for (int i=0; i<count; i++) {
115                 printf("%d th AP's ssid \"%s\" bssid \"%s\" rssi \"%d\" channel \"%d\" authentication mode \"%d\" \n",i, list[i].ssid, list[i].bssid, list[i].rssi, list[i].channel, list[i].encryption_mode);
116             }
117         } else {
118             printf("No AP found \n");
119         }
120     } else {
121         printf("Failed to get scanned AP list \n");
122     }
123     if (list != NULL) {
124         esp_hosted_free(list);
125         list = NULL;
126     }
127     count = 0;
128     ret = wifi_connected_stations_list(&stations_list,&count);
129     if (ret == SUCCESS) {
130         printf("number of connected stations is %d \n", count);
131         if (count) {
132             for (int i=0; i<count; i++) {
133                 printf("%d th stations's bssid \"%s\" rssi \"%d\" \n",i, stations_list[i].bssid, stations_list[i].rssi);
134             }
135         } else {
136             printf("No AP found \n");
137         }
138     } else {
139         printf("Failed to get connected stations list \n");
140     }
141     if (stations_list != NULL) {
142         esp_hosted_free(stations_list);
143         stations_list = NULL;
144     }
145     mode = WIFI_MODE_STA;
146     strncpy(mac, "1a:11:11:11:11:11", sizeof(mac));
147     ret = wifi_set_mac(mode, mac);
148     if (ret == SUCCESS) {
149         printf("MAC address is set \n");
150     } else {
151         printf("MAC address is not set \n");
152     }
153     power_save_mode = WIFI_PS_MIN_MODEM;
154     ret = wifi_set_power_save_mode(power_save_mode);
155     if (ret == SUCCESS) {
156         printf("Power save mode set \n");
157     } else {
158         printf("Power save mode is not set \n");
159     }
160     ret = wifi_get_power_save_mode(&power_save_mode);
161     if (ret == SUCCESS) {
162         printf("Power save mode is %d \n", power_save_mode);
163     } else {
164         printf("Failed to get power save mode \n");
165     }
166     return 0; 
167 }
This page took 0.034294 seconds and 4 git commands to generate.