20706 sleep config questions

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
LJYe_2922526
Level 5
Level 5
25 likes received 10 likes received 5 likes given

I'm currently working on a project with 20706 running a custom app controlled by a host MCU.

20706 pins used:

F5 - RX

F4 - TX

F3 - RTS

G4 - CTS

F8 - DEV_WAKE

F7 - HOST_WAKE

In the app I'm using the sleep config api:

wiced_sleep_config(WICED_TRUE, WICED_WAKE_GPIO_ACTIVE_LOW, WICED_WAKE_GPIO_ACTIVE_LOW);

Q1) Just want to confirm the chip will only try to wake up the host before UART transmission?

Q2) Is it possible to manually toggle HOST_WAKE if I'm using the wiced_sleep_config API? I found a previous post about this but it was not really answered.

Q3) Before I realized wiced_sleep_config would take over control of HOST_WAKE, I tried to use APIs below with both WICED_P32 and WICED_P26 to toggle F8 without success.

          wiced_hal_gpio_configure_pin(WICED_P32, GPIO_OUTPUT_ENABLE, GPIO_PIN_OUTPUT_LOW);

          wiced_hal_gpio_set_pin_output(WICED_P32, GPIO_PIN_OUTPUT_LOW);

I didn't do anything special when I migrated the project from CYW920706WCDEVAL dev board to our custom design. Do I have to change pin configuration somewhere somehow?

Q4) I'm still using Wiced Studio 6.0. Would it make a difference if I upgrade to 6.1?

Thanks!

0 Likes
1 Solution
Anonymous
Not applicable

1) The dev_wake and host_wake pins are not used when the CYW20706 is used in an embedded mode. By embedded mode, I mean to say that both the host and controller features of CYW20706 are utilized which is the case most of the times when you use WICED.

2) Yes, you will have to manually toggle the host_wake pin if you want to wake-up an external host.

3) That should've worked. Are you not seeing the pin output change based on your selection?

4) There was no change made with respect to GPIO output or low power in WICED 6.1.

View solution in original post

3 Replies
Anonymous
Not applicable

1) The dev_wake and host_wake pins are not used when the CYW20706 is used in an embedded mode. By embedded mode, I mean to say that both the host and controller features of CYW20706 are utilized which is the case most of the times when you use WICED.

2) Yes, you will have to manually toggle the host_wake pin if you want to wake-up an external host.

3) That should've worked. Are you not seeing the pin output change based on your selection?

4) There was no change made with respect to GPIO output or low power in WICED 6.1.

What I'm observing is that after wiced_sleep_config() the host_wake pin is controlled/toggled by the 20706 stack automatically. Specifically the line drops low right before 20706 starts UART tx, and stays high when UART is not active (note I set host_wake to active low in wiced_sleep_config). I do not have to use any of the wiced_hal_gpio_configure_pin() or wiced_hal_gpio_set_pin_output() to set host_wake.

When I tried to use wiced_hal_gpio_set_pin_output() on F8 the line stuck high. If you could confirm wiced_sleep_config() sets up automatic control of host_wake then I would not need to do it manually in my custom app. Thanks.

0 Likes
Anonymous
Not applicable

Along with sleep_configure, are you using wiced_transport and sending data to the host? If yes, then the HOST_WAKE will be toggled automatically when there is data to be sent to the host. However, we would recommend you use your own pin to toggle as the automatic toggling has not been completely tested. You could use P25 or P32 which is on the same pad as the HOST_WAKE.

You said you were not able to set P32 as an output. Can you try resetting the board once you program and then monitor the line? I've tested toggling P32 with the same lines you've used in WICED 6.0 and it works fine.