2016-04-04 01:15 AM
Good morning to all,
I have a little problem with my module. After a filesystem update I send the command AT+CFUN=1 to reset the module. The module return OK, return ''+WIND:2:Reset'' but don't resect. Why?Stefano #spwf01sa #bug2016-08-01 02:50 AM
Hi, Jerry!
I've fixed the problem. At first, yes, the external MCU pin is open-drain. I've tried to reconfigure this pin to Hi-Z input state and the module became to work correctly with AT+CFUN=1 command. I guess that there is aspecialty of reset circuit of the module.
Thank you for your help. Best regards, Daniel2016-08-01 07:26 AM
you're welcome!
Please update also here: [DEAD LINK /public/STe2ecommunities/interface/Lists/WiFi%20Modules/Flat.aspx?RootFolder=/public/STe2ecommunities/interface/Lists/WiFi%20Modules/AT%2bCFUN%3d1%20unexpected%20reaction%20on%20ver%203.5%20of%20FW&FolderCTID=0x01200200770978C69A1141439FE559EB459D75800086789498A6852D4897EA192EB1DEE909&TopicsView=https://my.st.com/public/STe2ecommunities/interface/Lists/WiFi%2520Modules/AllItems.aspx¤tviews=8]https://my.st.com/public/STe2ecommunities/interface/Lists/WiFi%20Modules/Flat.aspx?RootFolder=%2fpublic%2fSTe2ecommunities%2finterface%2fLists%2fWiFi%20Modules%2fAT%2bCFUN%3d1%20unexpected%20reaction%20on%20ver%203%2e5%20of%20FW&FolderCTID=0x01200200770978C69A1141439FE559EB459D75800086789498A6852D4897EA192EB1DEE909&TopicsView=https%3A%2F%2Fmy%2Est%2Ecom%2Fpublic%2FSTe2ecommunities%2Finterface%2FLists%2FWiFi%2520Modules%2FAllItems%2Easpx¤tviews=8Ciaojerry2018-04-20 03:26 AM
Hello Daniel,
I had the same problem for two day! And thanks for your suggestion to put the reset GPIO in Hi-Z!!!
In fact the ST middleware after each reset de-initialize the reset GPIO
RESET_WAKEUP_GPIO_CLK_ENABLE();
__GPIOA_CLK_ENABLE();
/* GPIO initialization performed into main by Cube32Mx */
wifi_instances.GPIO_InitStruct.Pin = WiFi_RESET_GPIO_PIN;
wifi_instances.GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
wifi_instances.GPIO_InitStruct.Pull = GPIO_PULLUP;
wifi_instances.GPIO_InitStruct.Speed = GPIO_SPEED_HIGH;
HAL_GPIO_Init(WiFi_RESET_GPIO_PORT, &wifi_instances.GPIO_InitStruct);
// IO_status_flag.WiFi_WIND_State.WiFiHWStarted = WIFI_FALSE;
wifi_connected = 0; //reset wifi_connected to get user callback
// memset((void*)&IO_status_flag.WiFi_WIND_State,0x00,sizeof(IO_status_flag.WiFi_WIND_State)); /*reset the WIND State?*/
IO_status_flag.WiFi_WIND_State = Undefine_state;
/* === RESET PIN - PC12 ===*/
HAL_GPIO_WritePin(WiFi_RESET_GPIO_PORT, WiFi_RESET_GPIO_PIN, GPIO_PIN_RESET);
HAL_Delay(200);
/* === SET PIN - PC12 ===*/
HAL_GPIO_WritePin(WiFi_RESET_GPIO_PORT, WiFi_RESET_GPIO_PIN, GPIO_PIN_SET);
HAL_Delay(50);
HAL_GPIO_DeInit(WiFi_RESET_GPIO_PORT, WiFi_RESET_GPIO_PIN);�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?
In my code, I used a custom reset function and the WiFi module stucks after soft-reset.
I reused the ST reset function and everything works!
Thank a lot!
Best Regards,
Federico