nets 模块
ESP32底层网络相关API 这里主要包含有netif和wifi组件,以及辅助的sntp和mac地址处理库。基本上所有的函数都是esp32的IDF框架直接对应过来的,查看idf v5.5.4文档即可知函数功能
netif组件
class netif
static attach_wifi_station(esp_netif: pointer) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
esp_netif | pointer |
- 返回:
int
esp_netif_attach_wifi_stationstatic attach_wifi_ap(esp_netif: pointer) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
esp_netif | pointer |
- 返回:
int
esp_netif_attach_wifi_apstatic destroy_default_wifi(esp_netif: pointer) -> None
本函数启用的话, 需要启用CONFIG_ESP_WIFI_NAN_ENABLE=y static native create_default_wifi_nan() -> pointer: esp_netif_create_default_wifi_nan
| 参数 | 类型 | 说明 |
|---|---|---|
esp_netif | pointer |
- 返回:
None
static create_wifi(wifi_if: pointer, esp_netif_inherent_config_t: pointer) -> pointer
| 参数 | 类型 | 说明 |
|---|---|---|
wifi_if | pointer | |
esp_netif_inherent_config_t | pointer |
- 返回:
pointer
esp_netif_create_wifistatic create_default_wifi_mesh_netifs(p_netif_sta: pointer, p_netif_ap: pointer) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
p_netif_sta | pointer | |
p_netif_ap | pointer |
- 返回:
int
esp_netif_create_default_wifi_mesh_netifsstatic new(esp_netif_config: pointer) -> pointer
| 参数 | 类型 | 说明 |
|---|---|---|
esp_netif_config | pointer |
- 返回:
pointer
esp_netif_newstatic set_ip_info(esp_netif: pointer, ip_info: pointer) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
esp_netif | pointer | |
ip_info | pointer |
- 返回:
int
esp_netif_set_ip_infoclass wifi
static clear_default_wifi_driver_and_handlers(esp_netif: void) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
esp_netif | void |
- 返回:
int
esp_wifi_clear_default_wifi_driver_and_handlersstatic new_config() -> str
分配wifi_init_config_t指针,使用IDF框架的默认宏WIFI_INIT_CONFIG_DEFAULT完成初始化,并设置nvs_enable=false
return: 返回wifi_init_config_t结构体的实例指针,用用于接下来的init函数
- 返回:
str
static scan_start(config: pointer, block: bool) -> int
config为wifi_scan_config_t结构体
| 参数 | 类型 | 说明 |
|---|---|---|
config | pointer | |
block | bool |
- 返回:
int
esp_wifi_scan_startstatic set_scan_parameters(config: pointer) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
config | pointer |
- 返回:
int
esp_wifi_set_scan_parametersstatic get_scan_parameters(config: pointer) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
config | pointer |
- 返回:
int
esp_wifi_get_scan_parametersstatic scan_get_ap_num(number: pointer) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
number | pointer |
- 返回:
int
esp_wifi_scan_get_ap_numstatic scan_get_ap_records(number: pointer, ap_records: pointer) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
number | pointer | |
ap_records | pointer |
- 返回:
int
esp_wifi_scan_get_ap_recordsstatic scan_get_ap_record(ap_record: pointer) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
ap_record | pointer |
- 返回:
int
esp_wifi_scan_get_ap_recordstatic sta_get_ap_info(ap_info: pointer) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
ap_info | pointer |
- 返回:
int
esp_wifi_sta_get_ap_infostatic set_protocol(ifx: uint, protocol_bitmap: int) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
ifx | uint | |
protocol_bitmap | int |
- 返回:
int
esp_wifi_set_protocolstatic get_protocol(ifx: uint, protocol_bitmap: int) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
ifx | uint | |
protocol_bitmap | int |
- 返回:
int
esp_wifi_get_protocolstatic set_bandwidth(ifx: uint, bw: uint) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
ifx | uint | |
bw | uint |
- 返回:
int
esp_wifi_set_bandwidthstatic get_bandwidth(ifx: uint, bw: uint) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
ifx | uint | |
bw | uint |
- 返回:
int
esp_wifi_get_bandwidthstatic set_channel(primary: uint, second: uint) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
primary | uint | |
second | uint |
- 返回:
int
esp_wifi_set_channelstatic get_channel(primary: uint, second: uint) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
primary | uint | |
second | uint |
- 返回:
int
esp_wifi_get_channelstatic set_promiscuous_rx_cb(cb: pointer) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
cb | pointer |
- 返回:
int
esp_wifi_set_promiscuous_rx_cbstatic set_promiscuous_filter(filter: pointer) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
filter | pointer |
- 返回:
int
esp_wifi_set_promiscuous_filterstatic get_promiscuous_filter(filter: pointer) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
filter | pointer |
- 返回:
int
esp_wifi_get_promiscuous_filterstatic set_promiscuous_ctrl_filter(filter: pointer) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
filter | pointer |
- 返回:
int
esp_wifi_set_promiscuous_ctrl_filterstatic get_promiscuous_ctrl_filter(filter: pointer) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
filter | pointer |
- 返回:
int
esp_wifi_get_promiscuous_ctrl_filterstatic set_config(interface: pointer, conf: pointer) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
interface | pointer | |
conf | pointer |
- 返回:
int
esp_wifi_set_configstatic get_config(interface: pointer, conf: pointer) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
interface | pointer | |
conf | pointer |
- 返回:
int
esp_wifi_get_configstatic ap_get_sta_list(sta: instance) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
sta | instance |
- 返回:
int
esp_wifi_ap_get_sta_liststatic ap_get_sta_aid(arg0: str, aid: pointer) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
arg0 | str | |
aid | pointer |
- 返回:
int
esp_wifi_ap_get_sta_aidstatic set_vendor_ie(enable: int, type: pointer, idx: pointer, vnd_ie: void) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
enable | int | |
type | pointer | |
idx | pointer | |
vnd_ie | void |
- 返回:
int
esp_wifi_set_vendor_iestatic set_vendor_ie_cb(cb: pointer, ctx: void) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
cb | pointer | |
ctx | void |
- 返回:
int
esp_wifi_set_vendor_ie_cbstatic 80211_tx(ifx: uint, buffer: void, len: int, en_sys_seq: int) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
ifx | uint | |
buffer | void | |
len | int | |
en_sys_seq | int |
- 返回:
int
esp_wifi_80211_txstatic register_80211_tx_cb(cb: pointer) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
cb | pointer |
- 返回:
int
esp_wifi_register_80211_tx_cbstatic get_tsf_time(interface: uint) -> int64
以下函数需要启用CONFIG_ESP_WIFI_CSI_ENABLED=y static native set_csi_rx_cb(cb: pointer, ctx: void) -> int: esp_wifi_set_csi_rx_cb static native set_csi_config(config: pointer) -> int: esp_wifi_set_csi_config static native get_csi_config(config: pointer) -> int: esp_wifi_get_csi_config static native set_csi(en: int) -> int: esp_wifi_set_csi
| 参数 | 类型 | 说明 |
|---|---|---|
interface | uint |
- 返回:
int64
esp_wifi_get_tsf_timestatic set_inactive_time(ifx: uint, sec: int) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
ifx | uint | |
sec | int |
- 返回:
int
esp_wifi_set_inactive_timestatic get_inactive_time(ifx: uint, sec: int) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
ifx | uint | |
sec | int |
- 返回:
int
esp_wifi_get_inactive_timestatic ftm_initiate_session(cfg: pointer) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
cfg | pointer |
- 返回:
int
esp_wifi_ftm_initiate_sessionstatic ftm_resp_set_offset(offset_cm: int) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
offset_cm | int |
- 返回:
int
esp_wifi_ftm_resp_set_offsetstatic ftm_get_report(report: pointer, num_entries: int) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
report | pointer | |
num_entries | int |
- 返回:
int
esp_wifi_ftm_get_reportstatic config_11b_rate(ifx: uint, disable: int) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
ifx | uint | |
disable | int |
- 返回:
int
esp_wifi_config_11b_ratestatic connectionless_module_set_wake_interval(wake_interval: int) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
wake_interval | int |
- 返回:
int
esp_wifi_connectionless_module_set_wake_intervalstatic set_country_code(country: str, ieee80211d_enabled: bool) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
country | str | |
ieee80211d_enabled | bool |
- 返回:
int
esp_wifi_set_country_codestatic get_country_code(country: str) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
country | str |
- 返回:
int
esp_wifi_get_country_codestatic config_80211_tx_rate(ifx: uint, rate: uint) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
ifx | uint | |
rate | uint |
- 返回:
int
esp_wifi_config_80211_tx_ratestatic config_80211_tx(ifx: uint, config: uint) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
ifx | uint | |
config | uint |
- 返回:
int
esp_wifi_config_80211_txstatic sta_get_negotiated_phymode(phymode: pointer) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
phymode | pointer |
- 返回:
int
esp_wifi_sta_get_negotiated_phymodestatic set_band_mode(band_mode: uint) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
band_mode | uint |
- 返回:
int
esp_wifi_set_band_modestatic get_band_mode(band_mode: uint) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
band_mode | uint |
- 返回:
int
esp_wifi_get_band_modestatic set_protocols(ifx: uint, protocols: pointer) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
ifx | uint | |
protocols | pointer |
- 返回:
int
esp_wifi_set_protocolsstatic get_protocols(ifx: uint, protocols: pointer) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
ifx | uint | |
protocols | pointer |
- 返回:
int
esp_wifi_get_protocolsstatic set_bandwidths(ifx: uint, bw: pointer) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
ifx | uint | |
bw | pointer |
- 返回:
int
esp_wifi_set_bandwidthsstatic get_bandwidths(ifx: uint, bw: pointer) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
ifx | uint | |
bw | pointer |
- 返回:
int
esp_wifi_get_bandwidthsstatic remain_on_channel(req: pointer) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
req | pointer |
- 返回:
int
esp_wifi_remain_on_channelclass sntp
static deinit() -> None
- 返回:
None
static reachability(index: int, reachability: int) -> int
| 参数 | 类型 | 说明 |
|---|---|---|
index | int | |
reachability | int |
- 返回:
int
esp_netif_sntp_reachabilityclass mac
static read(mac: pointer, esp_mac_type_t: uint) -> int
mac: 使用malloc分配6个字节即可接收mac地址
| 参数 | 类型 | 说明 |
|---|---|---|
mac | pointer | |
esp_mac_type_t | uint |
- 返回:
int
esp_read_macstatic iface_addr_set(mac: pointer, type: uint) -> int
type: 定义在nets_c.h中的esp_mac_type_t枚举值
| 参数 | 类型 | 说明 |
|---|---|---|
mac | pointer | |
type | uint |
- 返回:
int
esp_iface_mac_addr_set