Go to the documentation of this file.
36 #include "drv_digital_out.h"
37 #include "drv_digital_in.h"
38 #include "drv_spi_master.h"
61 #define WIFI8_MAP_MIKROBUS(cfg, mikrobus) \
62 cfg.miso = MIKROBUS(mikrobus, MIKROBUS_MISO); \
63 cfg.mosi = MIKROBUS(mikrobus, MIKROBUS_MOSI); \
64 cfg.sck = MIKROBUS(mikrobus, MIKROBUS_SCK); \
65 cfg.cs = MIKROBUS(mikrobus, MIKROBUS_CS); \
66 cfg.en = MIKROBUS(mikrobus, MIKROBUS_AN); \
67 cfg.rst = MIKROBUS(mikrobus, MIKROBUS_RST); \
68 cfg.wkp = MIKROBUS(mikrobus, MIKROBUS_PWM); \
69 cfg.int_pin = MIKROBUS(mikrobus, MIKROBUS_INT)
98 uint8_t root_sha1[20];
wifi8_nm_state_t
Definition: wifi8_types.h:618
pin_name_t cs
Definition: wifi8.h:119
err_t wifi8_block_write(wifi8_t *ctx, uint32_t addr, uint8_t *data_buf, uint16_t buf_len)
Write blocks of data to register address.
wifi8_app_wifi_cb_t app_wifi_cb
Definition: wifi8.h:102
err_t wifi8_get_full_firmware_version(wifi8_t *ctx, wifi8_m2m_rev_t *fw_version)
Synchronous API to obtain the firmware version currently running on the device.
Definition: wifi8_types.h:848
err_t wifi8_init(wifi8_t *ctx, wifi8_cfg_t *cfg)
WiFi 8 initialization function.
WiFi 8 Click context object.
Definition: wifi8.h:79
err_t wifi8_reg_write(wifi8_t *ctx, uint32_t addr, uint32_t data_in)
Write data to register address.
wifi8_hif_call_back_t pf_hif_cb
Definition: wifi8.h:150
wifi8_hif_call_back_t pf_ip_cb
Definition: wifi8.h:147
uint8_t u8_yield
Definition: wifi8.h:143
err_t wifi8_init_drv(wifi8_t *ctx)
Synchronous API to initialize the device driver.
Definition: wifi8_types.h:772
WiFi 8 Click configuration object.
Definition: wifi8.h:114
uint32_t u32_rx_size
Definition: wifi8.h:145
Definition: wifi8_types.h:816
wifi8_sock_addr_t wifi8_uip_sock_addr_t
Definition: wifi8.h:135
void wifi8_socket_init(wifi8_t *ctx)
The function performs the necessary initializations for the socket library.
err_t wifi8_socket_receive_from(wifi8_t *ctx, int8_t sock, void *pv_recv_buf, uint16_t u16_buf_len, uint32_t u32_timeoutmsec)
Asynchronous receive function.
pin_name_t en
Definition: wifi8.h:122
uint8_t u8_chip_mode
Definition: wifi8.h:139
digital_in_t int_pin
Definition: wifi8.h:86
digital_out_t rst
Definition: wifi8.h:82
uint32_t u32_rx_addr
Definition: wifi8.h:144
err_t wifi8_socket_send_to(wifi8_t *ctx, int8_t sock, void *pv_send_buffer, uint16_t u16_send_length, wifi8_sockaddr_t *pstr_dest_addr, uint8_t u8_addr_len)
Asynchronous sending function.
uint16_t session_id
Definition: wifi8.h:99
uint8_t u8_hif_rx_done
Definition: wifi8.h:141
wifi8_sockaddr_in_t addr
Definition: main.c:62
void(* wifi8_app_socket_cb_t)(int8_t sock, uint8_t u8_msg, void *pv_msg)
Definition: wifi8_types.h:1333
int8_t wifi8_socket_listen(wifi8_t *ctx, int8_t sock, uint8_t backlog)
Asynchronous listen function.
void wifi8_cfg_setup(wifi8_cfg_t *cfg)
WiFi 8 configuration object setup function.
wifi8_hif_call_back_t pf_ssl_cb
Definition: wifi8.h:152
pin_name_t sck
Definition: wifi8.h:118
pin_name_t rst
Definition: wifi8.h:123
pin_name_t miso
Definition: wifi8.h:116
wifi8_hif_call_back_t pf_ota_cb
Definition: wifi8.h:148
uint32_t hs_flags
Definition: wifi8.h:96
uint8_t hif_bl_offset
Definition: wifi8.h:93
uint32_t ping_id
Definition: wifi8.h:101
err_t wifi8_get_connection_info(wifi8_t *ctx)
err_t wifi8_handle_events(wifi8_t *ctx)
Synchronous event handler function.
err_t wifi8_block_read(wifi8_t *ctx, uint32_t addr, uint8_t *data_buf, uint16_t buf_len)
Read blocks of data from register address.
uint8_t socket_init
Definition: wifi8.h:100
err_t wifi8_socket_connect(wifi8_t *ctx, int8_t sock, wifi8_sockaddr_t *pstr_addr, uint8_t u8_addr_len)
Asynchronous connect function.
digital_out_t en
Definition: wifi8.h:81
uint32_t spi_speed
Definition: wifi8.h:128
err_t wifi8_ble_api_send(wifi8_t *ctx, uint8_t *msg, uint32_t len)
Asynchronous API to send an encapsulated BLE message.
spi_master_chip_select_polarity_t cs_polarity
Definition: wifi8.h:130
wifi8_hif_call_back_t pf_crypto_cb
Definition: wifi8.h:151
void(* wifi8_ping_cb_t)(uint32_t u32ip_addr, uint32_t u32rtt, uint8_t u8_error_code)
Definition: wifi8_types.h:1335
wifi8_hif_call_back_t pf_sigma_cb
Definition: wifi8.h:149
void(* wifi8_hif_call_back_t)(wifi8_t *ctx, uint8_t u8_op_code, uint16_t u16_data_size, uint32_t u32_addr)
Definition: wifi8.h:134
wifi8_nm_state_t device_state
Definition: wifi8.h:94
wifi8_app_resolve_cb_t app_resolve_cb
Definition: wifi8.h:104
void(* wifi8_app_resolve_cb_t)(uint8_t *pu8_domain_name, uint32_t u32_server_ip)
Definition: wifi8_types.h:1334
pin_name_t mosi
Definition: wifi8.h:117
err_t wifi8_generic_read(wifi8_t *ctx, uint8_t *data_out, uint8_t len)
Generic reading function.
Definition: wifi8_types.h:975
spi_master_mode_t spi_mode
Definition: wifi8.h:129
err_t wifi8_socket_bind(wifi8_t *ctx, int8_t sock, wifi8_sockaddr_t *pstr_addr, uint8_t u8_addr_len)
Asynchronous bind function associates the provided address and local port to the socket.
err_t wifi8_generic_write(wifi8_t *ctx, uint8_t *data_in, uint8_t len)
Generic writing function.
Definition: wifi8_types.h:837
pin_name_t int_pin
Definition: wifi8.h:125
#define MAX_SOCKET
Definition: wifi8_types.h:179
pin_name_t wkp
Definition: wifi8.h:124
wifi8_m2m_sec_type_t
Definition: wifi8_types.h:430
wifi8_ping_cb_t ping_cb
Definition: wifi8.h:105
pin_name_t chip_select
Definition: wifi8.h:91
err_t wifi8_default_cfg(wifi8_t *ctx)
WiFi 8 default configuration function.
err_t wifi8_get_ota_firmware_version(wifi8_t *ctx, wifi8_m2m_rev_t *fw_version)
Synchronous API to obtain the firmware version of the device.
err_t wifi8_connect(wifi8_t *ctx, char *pc_ssid, uint8_t u8_ssid_len, wifi8_m2m_sec_type_t u8_sec_type, void *pv_auth_info, uint16_t u16_ch)
wifi8_hif_call_back_t pf_wifi_cb
Definition: wifi8.h:146
err_t wifi8_socket_receive(wifi8_t *ctx, int8_t sock, void *pv_recv_buf, uint16_t u16_buf_len, uint32_t u32_timeoutmsec)
Asynchronous receive function.
uint32_t wifi8_chip_id(wifi8_t *ctx)
Get device ID.
uint8_t ch_num
Definition: wifi8.h:95
err_t wifi8_start_ap(wifi8_t *ctx, wifi8_m2m_ap_config_t *pstr_m2m_ap_config)
Asynchronous API to enable access point (AKA "hot-spot") mode on the device.
err_t wifi8_socket_create(wifi8_t *ctx, uint16_t u16_domain, uint8_t u8_type, uint8_t u8_flags)
Synchronous socket allocation function based on the specified socket type.
void(* wifi8_app_wifi_cb_t)(uint8_t u8_msg_type, void *pv_msg)
Definition: wifi8_types.h:1331
digital_out_t wkp
Definition: wifi8.h:83
spi_master_t spi
Definition: wifi8.h:89
err_t wifi8_socket_close(wifi8_t *ctx, int8_t sock)
Synchronous close function.
uint8_t u8_chip_sleep
Definition: wifi8.h:140
uint8_t u8_interrupt
Definition: wifi8.h:142
err_t wifi8_socket_send(wifi8_t *ctx, int8_t sock, void *pv_send_buffer, uint16_t u16_send_length)
Asynchronous sending function.
wifi8_app_socket_cb_t app_socket_cb
Definition: wifi8.h:103
err_t wifi8_req_scan_result(wifi8_t *ctx, uint8_t scan_request_index)
Asynchronous API to request the information of an access point discovered via scanning.
err_t wifi8_reg_read(wifi8_t *ctx, uint32_t addr, uint32_t *data_out)
Read data from register address.
err_t wifi8_request_scan(wifi8_t *ctx, uint8_t channel)
Asynchronous API to request the WINC to scan for networks.