- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
There are plenty of errors that current version of WICED generates because of SuperMux Tools.
Attached are logs and generated code.
The only places I manually changed in the generated bsc01_pin_config.c file was @ button declarations:
.button_pressed_value = GPIO_PIN_OUTPUT_LOW, //was GPIO_PIN_OUTPUT_HIGH which doesnt make sense
because default state of pulled up input (.default_state = GPIO_PIN_OUTPUT_HIGH,) doesn’t make any sense with pressed value to be the same.
The I2C setting nothing touched from what was default proposed initially (WICED_I2C_2_*) and generated and still generates errors!
.....
../apps/w191/bsc01/bsc01_pin_config.c:15:35: error: 'WICED_I2C_2_SDA' undeclared here (not in a function); did you mean 'WICED_I2C_1_SDA'?
[PLATFORM_GPIO_3] = {WICED_P16, WICED_I2C_2_SDA},
^~~~~~~~~~~~~~~
WICED_I2C_1_SDA
../apps/w191/bsc01/bsc01_pin_config.c:16:35: error: 'WICED_I2C_2_SCL' undeclared here (not in a function); did you mean 'WICED_I2C_1_SCL'?
[PLATFORM_GPIO_4] = {WICED_P17, WICED_I2C_2_SCL},
^~~~~~~~~~~~~~~
WICED_I2C_1_SCL
../apps/w191/bsc01/bsc01_pin_config.c:30:42: error: 'GPIO_EN_INT_FALING_EDGE' undeclared here (not in a function); did you mean 'GPIO_EN_INT_FALLING_EDGE'?
.config = (GPIO_INTERRUPT_ENABLE | GPIO_EN_INT_FALING_EDGE | GPIO_INPUT_ENABLE
^~~~~~~~~~~~~~~~~~~~~~~
GPIO_EN_INT_FALLING_EDGE
../apps/w191/bsc01/bsc01_pin_config.c:30:40: error: invalid operands to binary | (have 'int' and 'wiced_platform_gpio_t * {aka struct <anonymous> *}')
.config = (GPIO_INTERRUPT_ENABLE | GPIO_EN_INT_FALING_EDGE | GPIO_INPUT_ENABLE
^
../apps/w191/bsc01/bsc01_pin_config.c:30:66: error: invalid operands to binary | (have 'wiced_platform_gpio_t * {aka struct <anonymous> *}' and 'int')
.config = (GPIO_INTERRUPT_ENABLE | GPIO_EN_INT_FALING_EDGE | GPIO_INPUT_ENABLE
~~~~~~~~~~~~~~~~~~~~~ ^
../apps/w191/bsc01/bsc01_pin_config.c:31:6: error: invalid operands to binary | (have 'wiced_platform_gpio_t * {aka struct <anonymous> *}' and 'int')
.config = (GPIO_INTERRUPT_ENABLE | GPIO_EN_INT_FALING_EDGE | GPIO_INPUT_ENABLE
~~~~~~~~~~~~~~~~~~~~~
| GPIO_PULL_UP),
^
../apps/w191/bsc01/bsc01_pin_config.c:30:17: warning: initialization makes integer from pointer without a cast [-Wint-conversion]
.config = (GPIO_INTERRUPT_ENABLE | GPIO_EN_INT_FALING_EDGE | GPIO_INPUT_ENABLE
^
../apps/w191/bsc01/bsc01_pin_config.c:30:17: note: (near initialization for 'platform_button[0].config')
../apps/w191/bsc01/bsc01_pin_config.c:30:17: error: initializer element is not constant
../apps/w191/bsc01/bsc01_pin_config.c:30:17: note: (near initialization for 'platform_button[0].config')
../apps/w191/bsc01/bsc01_pin_config.c:38:40: error: invalid operands to binary | (have 'int' and 'wiced_platform_gpio_t * {aka struct <anonymous> *}')
.config = (GPIO_INTERRUPT_ENABLE | GPIO_EN_INT_FALING_EDGE | GPIO_INPUT_ENABLE
^
../apps/w191/bsc01/bsc01_pin_config.c:38:66: error: invalid operands to binary | (have 'wiced_platform_gpio_t * {aka struct <anonymous> *}' and 'int')
.config = (GPIO_INTERRUPT_ENABLE | GPIO_EN_INT_FALING_EDGE | GPIO_INPUT_ENABLE
~~~~~~~~~~~~~~~~~~~~~ ^
../apps/w191/bsc01/bsc01_pin_config.c:39:6: error: invalid operands to binary | (have 'wiced_platform_gpio_t * {aka struct <anonymous> *}' and 'int')
.config = (GPIO_INTERRUPT_ENABLE | GPIO_EN_INT_FALING_EDGE | GPIO_INPUT_ENABLE
~~~~~~~~~~~~~~~~~~~~~
| GPIO_PULL_UP),
.....
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,
I think its a mistake in the CYBT_413034 platform files. There is no I2C_2 available and by default the supermux wizard is enabled with I2C_2
Either please remove the I2C and add again in the wizard , or in the config.c file generated, change I2C_2 to I2C_1 and build the project.
Sorry for the inconvenience caused.
Regards,
Anjana
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,
I think its a mistake in the CYBT_413034 platform files. There is no I2C_2 available and by default the supermux wizard is enabled with I2C_2
Either please remove the I2C and add again in the wizard , or in the config.c file generated, change I2C_2 to I2C_1 and build the project.
Sorry for the inconvenience caused.
Regards,
Anjana
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Yes, but I2C number is not the only problem:
- GPIO_EN_INT_FALING_EDGE is set in both SuperMuxConfig.wst for CYBT_413034_EVAL and CYW920719Q40EVB_01 platforms, while in wiced_hal_gpio.h is declared GPIO_EN_INT_FALLING_EDGE
- in generated *_pin_config.c files always
.button_pressed_value = GPIO_PIN_OUTPUT_HIGH
but shouldn't it be opposite to what is .default_state? (Especially when there is no option in the SuperMux dialogs to set button_pressed_value)
Edit:
Also wiced_hal_gpio_configure_pin() with certain config parameters fails, but the problem is posted separately
Thanks
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi ,
Thanks for pointing out the errors. I will forward this to our software team to fix .
Sorry for the inconvenience caused.
Regards,
Anjana
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,
Want to update the thread as per the internal interactions , platforms in WICED 6.2.1 has been stopped updating now. The Supermux GUI is not perfect and its recommended for customers to use APIs directly in their application.
Sorry for the inconvenience caused.
Regards,
Anjana