EVK BSP Changelog¶
v0.6.0 - 2022-05-27¶
AddedSupport for 20 and 24-bit audio samples.
Support for payload size up to 65535 bytes.
Added a function to set the USB_LP IRQ callback.
ChangedI2S is now Right justified (LSB justified), Left channel on FS High.
DMA alignment is now on WORDS when using 20 and 24-bit audio.
STM32 USB stack functions have been moved from evk_usb.c to the evk_usb_device.c files in the usb_device folder.
evk_usb.c only contain functions required to read the usb detect pin and enable or disable the USB_LP IRQ.
The USB descriptor definitions are now in the evk_usb.h file.
The USB_LP IRQ priority and IRQn definitions are now part of the evk_def.h file.
NVIC_USB_IRQ has been renamed to NVIC_USB_DET_IRQ to avoid confusion with USB_LP_IRQ.
FixedFix the double inversion logic for the DMA direction in the sai_dma_start_it function.
SAI TX FIFO threshold is now set to FULL.
v0.5.0 - 2022-03-03¶
ChangedChange every public function prefix from
bsp_toevk_.
FixedFixed free running timer issue while using low power functionalities.
Fixed disabling and enabling DMA IRQ functions which wasn’t working as intended.
v0.4.0 - 2022-02-04¶
Added- The following functions were added in the clock module:
bsp_clock_set_pll_170Mhz_as_sysclk()
bsp_clock_set_hsi_as_sysclk()
bsp_clock_set_hsi_as_sysclk_protected()
bsp_clock_init_rtc_for_wakeup()
bsp_clock_start_rtc_for_wakeup()
- The following function was added in the power module:
bsp_power_shutdown_and_wake_up()
- The following functions were added in the audio module:
bsp_audio_i2c_write_byte_blocking()
bsp_audio_i2c_read_byte_blocking()
bsp_audio_sai_configuration()
bsp_audio_sai_write_non_blocking()
bsp_audio_sai_read_non_blocking()
bsp_audio_sai_stop_write_non_blocking()
bsp_audio_sai_stop_read_non_blocking()
bsp_expansion_sai_start_write_non_blocking()
bsp_expansion_sai_start_read_non_blocking()
bsp_expansion_set_sai_tx_dma_cplt_callback()
bsp_expansion_set_sai_rx_dma_cplt_callback()
bsp_radio_enable_dma_irq_it()
bsp_radio_disable_dma_irq_it()
Changed#defines for interrupt priorities in bsp_def.h were renamed to match our internal naming convention.
#defines for DMA_Channelx_IRQn were abstracted with peripherals #defines in bsp_def.h.
NVIC_SetPriority and NVIC_EnableIRQ now uses the defines in bsp_def.h, thus making future changes easier and centralized.
#defines in bsp_def.h were reordered.
Some typedefs were moved from bsp_def.h to bsp_audio.h.
DMA1 and DMA2 initialization is now centralized in bsp.c.
GPIO clock enabling has been centralized in bsp.c.
The return type of some USB functions was changed from uwb_err to uint8_t.
bsp_radio_spi_transfer_full_duplex_blocking() does not use the DMA anymore.
bsp_audio.h is now included by bsp.h, the public BSP API.
Removed- The following functions were removed from the audio module:
bsp_audio_init()
bsp_audio_deinit()
bsp_audio_playback_start()
bsp_audio_record_start()
bsp_audio_playback_stop()
bsp_audio_record_stop()
bsp_audio_i2c_write()
bsp_audio_i2c_read()
bsp_audio_sai_write()
bsp_audio_sai_read()
bsp_audio_set_playback_channel()
bsp_audio_set_record_channel()
bsp_audio_set_sampling_rate()
bsp_audio_set_rx_callback()
bsp_audio_set_tx_callback()
bsp_audio_set_error_callback()
bsp_audio_config1()
bsp_audio_config2()
bsp_audio_config3()
Some unused includes were removed from bsp_def.h.
FixedFree running timer that wasn’t providing a 4 kHz tick if system clock was not set to 163.84 MHz.
v0.3.0 - 2021-12-13¶
ChangedRaise STM32 HAL tick interrupt priority one level (from 0x0f to 0x0e) to make it higher priority than the PendSV interrupt which is at 0x0f. This enables calling HAL delay functions inside the PendSV ISR.
Functions bsp_audio_sai_read() and bsp_audio_sai_write() size argument is now in bytes instead of in samples.
Function bsp_audio_playback_start() now calls audio_tx_callback() instead of sending dummy bytes on the I2S bus.
v0.2.0 - 2021-11-09¶
ChangedSTM32 I2S controller role from master to slave.
STM32 system clock frequency from 164 MHz to 170 MHz.
FixedC++ inclusion directives.
Wrong call to STM32 HAL RCC when initializing TIM3 timer.
v0.1.0 - 2021-09-30¶
Initial release.