nRF Connect SDK API 3.3.99
Loading...
Searching...
No Matches
chmap_filter.h File Reference
#include <stdbool.h>
#include <stddef.h>
#include <stdint.h>
#include "zephyr/types.h"

Go to the source code of this file.

Data Structures

struct  chmap_filter_params
 Channel map filter parameters that can be changed at runtime. More...
 

Macros

#define CHMAP_WLAN_802_11GN_CENTER_FREQS    {12, 17, 22, 27, 32, 37, 42, 47, 52, 57, 62, 67}
 
#define CHMAP_WLAN_802_11GN_CENTER_FREQ_COUNT   12
 
#define CHMAP_WLAN_802_11GN_CHANNEL_WIDTH_MHz   20
 
#define CHMAP_BLE_CHANNEL_COUNT   37
 
#define CHMAP_BLE_BITMASK_SIZE   5
 
#define CHMAP_BLE_BITMASK_DEFAULT   {0xFF, 0xFF, 0xFF, 0xFF, 0x1F}
 
#define CHMAP_FILTER_INST_SIZE   580
 
#define CHMAP_FILTER_INST_ALIGN   4
 
#define CHMAP_PARAM_DYN_EVAL_TARGET   10
 
#define CHMAP_PARAM_DYN_BLOCK_INCREASE   2
 
#define DEFAULT_PARAM_MAINTENANCE_SAMPLE_COUNT   2000
 
#define DEFAULT_PARAM_INITIAL_RATING   0
 
#define DEFAULT_PARAM_BLE_MIN_CHANNEL_COUNT   4
 
#define DEFAULT_PARAM_BLE_WIFI_KEEPOUT_DURATION   2
 
#define DEFAULT_PARAM_EVAL_MAX_COUNT   1
 
#define DEFAULT_PARAM_EVAL_DURATION   5
 
#define DEFAULT_PARAM_EVAL_KEEPOUT_DURATION   300
 
#define DEFAULT_PARAM_DYN_DURATIONS   true
 
#define DEFAULT_PARAM_BLE_WEIGHT_CRC_OK   100 /* = 1.0 */
 
#define DEFAULT_PARAM_BLE_WEIGHT_CRC_ERROR   -100 /* = -1.0 */
 
#define DEFAULT_PARAM_BLE_RATING_TRIM   49 /* = 0.49 */
 
#define DEFAULT_PARAM_BLE_BLOCK_THRESHOLD   25 /* = 0.25 */
 
#define DEFAULT_PARAM_WIFI_RATING_INC   400 /* = 4.0 */
 
#define DEFAULT_PARAM_WIFI_PRESENT_THRESHOLD   90 /* = 0.9 */
 
#define DEFAULT_PARAM_WIFI_ACTIVE_THRESHOLD   75 /* = 0.75 */
 
#define DEFAULT_PARAM_WIFI_RATING_TRIM   50 /* = 0.5 */
 
#define DEFAULT_PARAM_EVAL_SUCCESS_THRESHOLD   85 /* = 0.85 */
 

Functions

const char * chmap_filter_version (void)
 Get library version number.
 
void chmap_filter_init (void)
 Initialize channel map filter library.
 
int chmap_filter_instance_init (struct chmap_instance *p_inst, size_t size)
 Initialize channel map filter instance.
 
void chmap_filter_crc_update (struct chmap_instance *p_inst, uint8_t ch_idx, uint16_t crc_ok, uint8_t crc_error)
 Update channel CRC information.
 
bool chmap_filter_process (struct chmap_instance *p_inst)
 Process channel map filter.
 
uint8_t * chmap_filter_suggested_map_get (struct chmap_instance *p_inst)
 Get suggested channel map.
 
void chmap_filter_suggested_map_confirm (struct chmap_instance *p_inst)
 Confirm that suggested channel map has been applied.
 
void chmap_filter_params_get (struct chmap_instance *p_inst, struct chmap_filter_params *p_params)
 Get dynamic parameters.
 
int chmap_filter_params_set (struct chmap_instance *p_inst, struct chmap_filter_params *p_params)
 Set dynamic parameters.
 
uint16_t chmap_filter_wifi_blacklist_get (void)
 Get bitmask of currently blacklisted wifi channels.
 
int chmap_filter_blacklist_set (struct chmap_instance *p_inst, uint16_t blacklist)
 Set wifi channels blacklist.
 
int chmap_filter_chn_info_get (struct chmap_instance *p_inst, uint8_t chn_idx, uint8_t *p_state, int16_t *p_rating, uint8_t *p_freq)
 Get BLE channel information.