You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
After idf.py set-target esp32s3, and having the tools and esp-idf v5.4 installed (with prereqs, on macOS), I get the following error when building the indicator_basis example
/Users/user/path/SenseCAP_Indicator_ESP32/components/bsp/src/boards/sensecap_indicator_board.c:51:24: error: initialization of 'esp_err_t (*)(uint8_t *)' {aka 'int (*)(unsigned char *)'} from incompatible pointer type 'esp_err_t (*)(uint16_t *)' {aka 'int (*)(short unsigned int *)'} [-Wincompatible-pointer-types]
51 | .read_input_pins = tca9535_read_input_pins,
| ^~~~~~~~~~~~~~~~~~~~~~~
/Users/user/path/SenseCAP_Indicator_ESP32/components/bsp/src/boards/sensecap_indicator_board.c:51:24: note: (near initialization for 'g_board_lcd_evb_io_expander_ops.read_input_pins')
The text was updated successfully, but these errors were encountered:
acciry
changed the title
Build issue on idf v5.3,
Build issue on idf v5.3, pointer type missmatch
Jan 20, 2025
It looks like the parameters of tca9535_read_input_pins(defined in components/i2c_devices/io_expander/tca9535.c) functions don't match the definition of io_expander_ops_t(defined in components/bsp/include/bsp_board.h)
I think this function is used to read the status register of the tca9535's input pins. tca9535 provides 16 input pins so it should be a 16-bit output.
Referring to the following modification of bsp_board.h may solve the problem
esp_err_t (*read_input_pins)(uint8_t *pin_val); //at line 200 of bsp_board.h//change toesp_err_t (*read_input_pins)(uint16_t *pin_val); //at line 200 of bsp_board.h
After idf.py set-target esp32s3, and having the tools and esp-idf v5.4 installed (with prereqs, on macOS), I get the following error when building the
indicator_basis
exampleThe text was updated successfully, but these errors were encountered: