AnsweredAssumed Answered

[STM32F7] SMBus stack

Question asked by smrtkai on Sep 6, 2016
Latest reply on Sep 6, 2016 by Nesrine M
Hi,

I want to read the battery status from a smart battery using SMBus. I found the Cube extension "X-CUBE-SMBUS". 

http://www.st.com/content/st_com/en/products/embedded-software/mcus-embedded-software/stm32-embedded-software/stm32cube-expansion-software/x-cube-smbus.html

In Application Note 4502 says: 
"This document describes the STM32 SMBus/PMBus firmware (X-CUBE-SMBUS) stack,which is based on specific STM32Cube™ HAL drivers available for STM32F0 andSTM32F3 families, i.e. the STM32 MCUs that contain I2C peripheral supportingSMBus/PMBus features”."

I tried to port the software stack to STM32F7. I have commented out every macro in stm32_hal_legay.h and added the files "stm32f3xx_hal_smbus.*"  and "stm32_SMBUS_stack.*" from the example project to my project (generated from STM32CubeMX). After adapting the includes everything compiles. But I get the following linker errors, although the functions are defined in "stm32f3xx_hal_smbus.*":

Undefined symbol HAL_SMBUS_DeInit ...
Undefined symbol HAL_SMBUS_DisableListenIT ...
...

Can anyone help to fix this error? Or does anyone know how to use SMBUS on STM32F7?

Outcomes