Skip to content
  •  
  •  
  •  
12 changes: 5 additions & 7 deletions lib/stm32wb/README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,8 @@ Purpose
| This library is used on stm32wb series to enable HCI communication between a host BLE running on the Cortex-M4 core
| and a controller BLE firmware running on the Cortex-M0 core.
Status
------
version v1.20.0
Status:
version v1.23.0

Coprocessor Binaries
--------------------
Expand Down Expand Up @@ -78,9 +77,8 @@ URL
---
https://github.com/STMicroelectronics/STM32CubeWB

Commit
------
529e571e91c93d4bf1aae6e0d69b9a5dcf4d828d
Commit:
24e69da13336e90cccce4fccf5b8fddfcd4959fc

Maintained-by
-------------
Expand All @@ -94,7 +92,7 @@ License Link
------------
https://opensource.org/license/BSD-3-Clause

Patch List
Patch List:
----------
* | Move some files license from ST SLA0044 to BSD-3 Clause.
| Following files are distributed under ST License SLA0044 and they are made available under BSD-3 Clause for Zephyr:
Expand Down
8 changes: 8 additions & 0 deletions lib/stm32wb/hci/app_conf.h
Original file line number Diff line number Diff line change
Expand Up @@ -327,6 +327,14 @@

#define CFG_BLE_MAX_TX_POWER (6)

/**
* BLE stack Maximum number of created Enhanced ATT bearers to be configured
* in addition to the number of links
* - Range: 0 .. 4
*/
#define CFG_BLE_MAX_ADD_EATT_BEARERS (4)


/**
* BLE Rx model configuration flags to be configured with:
* - SHCI_C2_BLE_INIT_RX_MODEL_AGC_RSSI_LEGACY
Expand Down
4 changes: 2 additions & 2 deletions lib/stm32wb/hci/ble_bufsize.h
Original file line number Diff line number Diff line change
Expand Up @@ -97,9 +97,9 @@
* mentioned parameters.
*/
#if (BEACON_ONLY != 0)
#define BLE_FIXED_BUFFER_SIZE_BYTES 4100 /* Beacon only */
#define BLE_FIXED_BUFFER_SIZE_BYTES 4200 /* Beacon only */
#elif (LL_ONLY_BASIC != 0)
#define BLE_FIXED_BUFFER_SIZE_BYTES 6040 /* LL only Basic*/
#define BLE_FIXED_BUFFER_SIZE_BYTES 5960 /* LL only Basic*/
#elif (LL_ONLY != 0)
#define BLE_FIXED_BUFFER_SIZE_BYTES 6288 /* LL only Full */
#elif (SLAVE_ONLY != 0)
Expand Down
1 change: 0 additions & 1 deletion lib/stm32wb/hci/hw_ipcc.c
Original file line number Diff line number Diff line change
Expand Up @@ -667,4 +667,3 @@ static void HW_IPCC_TRACES_EvtHandler( void )
}

__weak void HW_IPCC_TRACES_EvtNot( void ){};

75 changes: 42 additions & 33 deletions lib/stm32wb/hci/shci.h
Original file line number Diff line number Diff line change
Expand Up @@ -565,53 +565,62 @@ extern "C" {
*/
int8_t max_tx_power;

/**
* RX model configuration
* - bit 0: 1: agc_rssi model improved vs RF blockers 0: Legacy agc_rssi model
* - other bits: reserved ( shall be set to 0)
*/
/**
* RX model configuration
* - bit 0: 1: agc_rssi model improved vs RF blockers 0: Legacy agc_rssi model
* - other bits: reserved ( shall be set to 0)
*/
uint8_t rx_model_config;

/* Maximum number of advertising sets.
* Range: 1 .. 8 with limitation:
* This parameter is linked to max_adv_data_len such as both compliant with allocated Total memory computed with BLE_EXT_ADV_BUFFER_SIZE based
* on Max Extended advertising configuration supported.
* This parameter is considered by the CPU2 when Options has SHCI_C2_BLE_INIT_OPTIONS_EXT_ADV flag set
*/
/** Maximum number of advertising sets.
* Range: 1 .. 8 with limitation:
* This parameter is linked to max_adv_data_len such as both compliant with allocated Total memory computed with BLE_EXT_ADV_BUFFER_SIZE based
* on Max Extended advertising configuration supported.
* This parameter is considered by the CPU2 when Options has SHCI_C2_BLE_INIT_OPTIONS_EXT_ADV flag set
*/
uint8_t max_adv_set_nbr;

/* Maximum advertising data length (in bytes)
* Range: 31 .. 1650 with limitation:
* This parameter is linked to max_adv_set_nbr such as both compliant with allocated Total memory computed with BLE_EXT_ADV_BUFFER_SIZE based
* on Max Extended advertising configuration supported.
* This parameter is considered by the CPU2 when Options has SHCI_C2_BLE_INIT_OPTIONS_EXT_ADV flag set
*/
/** Maximum advertising data length (in bytes)
* Range: 31 .. 1650 with limitation:
* This parameter is linked to max_adv_set_nbr such as both compliant with allocated Total memory computed with BLE_EXT_ADV_BUFFER_SIZE based
* on Max Extended advertising configuration supported.
* This parameter is considered by the CPU2 when Options has SHCI_C2_BLE_INIT_OPTIONS_EXT_ADV flag set
*/
uint16_t max_adv_data_len;

/* RF TX Path Compensation Value (16-bit signed integer). Units: 0.1 dB.
* Range: -1280 .. 1280
*/
/** RF TX Path Compensation Value (16-bit signed integer). Units: 0.1 dB.
* Range: -1280 .. 1280
*/
int16_t tx_path_compens;

/* RF RX Path Compensation Value (16-bit signed integer). Units: 0.1 dB.
* Range: -1280 .. 1280
*/
/** RF RX Path Compensation Value (16-bit signed integer). Units: 0.1 dB.
* Range: -1280 .. 1280
*/
int16_t rx_path_compens;

/* BLE core specification version (8-bit unsigned integer).
* values as: 11(5.2), 12(5.3), 13(5.4)
*/
/** BLE core specification version (8-bit unsigned integer).
* values as: 11(5.2), 12(5.3), 13(5.4)
*/
uint8_t ble_core_version;

/**
* Options flags extension
* - bit 0: 1: appearance Writable 0: appearance Read-Only
* - bit 1: 1: Enhanced ATT supported 0: Enhanced ATT not supported
* - other bits: reserved ( shall be set to 0)
*/
/**
* Options flags extension
* - bit 0: 1: appearance Writable 0: appearance Read-Only
* - bit 1: 1: Enhanced ATT supported 0: Enhanced ATT not supported
* - other bits: reserved ( shall be set to 0)
*/
uint8_t Options_extension;

} SHCI_C2_Ble_Init_Cmd_Param_t;
/**
* MaxAddEattBearers
*
* Maximum number of bearers that can be created for Enhanced ATT
* in addition to the number of links
* - Range: 0 .. 4
*/
uint8_t MaxAddEattBearers;

} SHCI_C2_Ble_Init_Cmd_Param_t;

typedef PACKED_STRUCT{
SHCI_Header_t Header; /** Does not need to be initialized by the user */
Expand Down
8 changes: 8 additions & 0 deletions lib/stm32wb/hci/stm_list.h
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,10 @@
#ifndef _STM_LIST_H_
#define _STM_LIST_H_

#ifdef __cplusplus
extern "C" {
#endif

/* Includes ------------------------------------------------------------------*/
#include "stm32_wpan_common.h"

Expand Down Expand Up @@ -52,4 +56,8 @@ void LST_get_next_node (tListNode * ref_node, tListNode ** node);

void LST_get_prev_node (tListNode * ref_node, tListNode ** node);

#ifdef __cplusplus
}
#endif

#endif /* _STM_LIST_H_ */
Loading