2021-04-22 06:37 AM
I have an STM32 F401RE (NUCLEO - 64)board. In the document " Description of STM32F4 HAL and low-layer drivers" there are HAL SMBUS Generic drivers. Is it possible to implement SMbus communication using this board or I will have to purchase on of the above mentioned boards.
And does it work only for the above mentioned boards or the all the boards of STM32 F0 / F3 / G4 / H7 / L0 / L4 / WB Series ?
Solved! Go to Solution.
2021-04-22 09:25 AM
Hi @Shubham ,
The SMBus on STM32F4 is limited to 100kHz, because the I2C peripheral doesn't support timing necessary for higher SMBUS frequency (it's then different to I2C). According to the reference manual it's limited to SMBus 2.0.
After an internal cross-check with the team, there is no plan to modify the driver calls in the stack/middleware to use the HAL driver of STM32F4.
Please mark my answer as best by clicking on the "Select as Best" button if it helped :)
Imen
2021-04-22 07:55 AM
Hello @Shubham ,
Let me first welcome you to the STM32 Community =)
What version of SMBUS interface specification the battery is using ?
There is a HAL SMBus source code within STM32CubeF4 MCU package: stm32f4xx_hal_smbus.c and stm32f4xx_hal_fmpsmbus.c, available under this path: STM32Cube_FW_F4_V1.26.1\Drivers\STM32F4xx_HAL_Driver\Src
But, let me check back with the SMBUS team if the X-CUBE-SMBUS package will be updated to support F4.
I'll make sure to post any updates here as soon as I hear back from them.
Imen
2021-04-22 09:25 AM
Hi @Shubham ,
The SMBus on STM32F4 is limited to 100kHz, because the I2C peripheral doesn't support timing necessary for higher SMBUS frequency (it's then different to I2C). According to the reference manual it's limited to SMBus 2.0.
After an internal cross-check with the team, there is no plan to modify the driver calls in the stack/middleware to use the HAL driver of STM32F4.
Please mark my answer as best by clicking on the "Select as Best" button if it helped :)
Imen
2021-04-23 11:45 PM
Hello @Imen DAHMEN
Thank you for the prompt response. The battery supports SMBUS specification version 1.1.