2016-12-13 10:57 PM
I'm using the STM32F411RE board with the IDW01M1 WiFi expansion module. I run some examples from en.x-cube-wifi1_firmware.zip lib.
However, all example code I run always fail during the wifi_init()--> wifi_reset() call where it just hangs in this while loop:
while(IO_status_flag.WiFi_WIND_State.WiFiHWStarted != WIFI_TRUE)
{ __NOP(); //nothing to do }but WiFiHWStarted never gets set to WIFI_TRUE.
Maybe i dismissed some wiring conncetions (the expantion connected via wires to eval board)?
I have JP3 set in the 1-2 position (which it is). I also have JP4 set in the 1-2 position. I have connceted 3.3v to CN7 pins 12&Thanks,
Note: this post was migrated and contained many threaded conversations, some content may be missing.2017-05-04 06:04 AM
Hi,
I am not using any .ioc file and so don't have any.
Are you using SPWF04 or 01?
For SPWF04, we don't have any plans to support L0 actually, but if you need we can send you something basic for testing.
regards,
Mridu
2017-05-04 07:02 AM
hi,
i am using SPWF01 but for the final design i switch now on SPWF04 (WPS option, MQTT protocole). Do you see any problem to switch on SPWF04?
i worked on server_socket but the project is changing now and i am going to work on client_socket application.
What is the difference between SPWF01 and SPWF04 for client_socket application. Note that STM32L053R8 communicate with uart to wifi moluIe. I will be happy to receive client_socket application compatible STM32L053/SPWF04.
Thks
Yoann
2017-05-04 11:57 PM
Hi,
there is no issue with switching to SPWF04 and there is no real difference between the client socket applications.
The parser is different for SPWF01 and SPWF04, but we are going to make it same shortly and we are finalizing the new parser for SPWF04 which we will then extend to SPWF01. You can also exploit SPI interface with SPWF04 instead of UART.
We will provide you boiler plate code on L0+SPWF04 (outside package) so that you can start using it quickly.
regards,
Mridu
2017-08-03 10:06 AM
I contact you in direct.
I post a message on the STM forum but no response
Support ST in france say me to try to contact you .
I have some problem:
i work on WIFI module SPWF04SA and SMT32F401RE with STM32CubeExpansion_WIFI_V3.0.2 (app client_Socket + MDK-ARM V5.22.0.0).
i would like to migrate to STM32F401RB on my board but i have some issues!
Pb1: i migrated RE to RB (source CubeMx V4.21.0)
startup_stm32f401xe.s -> startup_stm32f401xc.s
system_stm32f4xx.c -> new system_stm32f4xx.c
stm32_xx_it.c -> i keep stm32_xx_it.c
STM32F4xx_HAL_Driver -> new STM32F4xx_HAL_Driver
option target (stm32F401RETx -> STM32F401RB, Xtal = 84Mhz)
i miss something? It doesn’t work
I keep STM32CubeExpansion_WIFI_V3.0.2 (app client_Socket + MDK-ARM V5.22.0.0) I keep STM32F401RE in keil setting and just the size of memory and it work for the moment but I would like to have a setup correct with a STM32F401RB
Pb2: i use external clock 8Mhz and code generated with CubeMx doesn't work!
internal clock with HSI works!!
fct SystemClock_Config(): 84Mhz with HSE
RCC_OscInitTypeDef RCC_OscInitStruct; RCC_ClkInitTypeDef RCC_ClkInitStruct;
/**Configure the main internal regulator output voltage */ __HAL_RCC_PWR_CLK_ENABLE();
__HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE2);
/* Enable HSI Oscillator and activate PLL with HSI as source */
RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSI;
RCC_OscInitStruct.HSIState = RCC_HSI_ON;
RCC_OscInitStruct.HSICalibrationValue = 0x10;
RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSI;
RCC_OscInitStruct.PLL.PLLM = 16;
RCC_OscInitStruct.PLL.PLLN = 336;
RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV4;
RCC_OscInitStruct.PLL.PLLQ = 7;
HAL_RCC_OscConfig(&RCC_OscInitStruct);
// RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE;
// RCC_OscInitStruct.HSEState = RCC_HSE_ON;
// RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
// RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE;
// RCC_OscInitStruct.PLL.PLLM = 8;
// RCC_OscInitStruct.PLL.PLLN = 336;
// RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV4;
// RCC_OscInitStruct.PLL.PLLQ = 4;
// HAL_RCC_OscConfig(&RCC_OscInitStruct);
+ fct SystemCoreClockUpdate();
Pb3: pin RESET PA8 to PC12 locked. i modified fct wifi_reset() declaration of pin wifi_instances_t wifi_instances; by GPIO_InitTypeDef RESET_InitStruct; to configure correctly pin RESET to PC12. Why configuration PC12 is locked (locked to PAx)
I re define GPIO_InitTypeDef RESET_InitStruct intead of wifi_instances_t wifi_instances;
And it work!!
Thanks for your help
2017-08-03 10:16 AM
PB2: Make sure HSE_VALUE defined in project matches your external source. Make sure the external source starts and is functional, emit via MCO (PA8) to check internal clocks.
2017-10-09 12:57 AM
hi,
problem fixed to modify file stm32F4xx_hal_conf.h:
#define HSE_VALUE ((uint32_t)8000000U) /*!< Value of the External oscillator in Hz */
Thks
Yoann
2017-10-15 11:10 PM
I try to run the AZURE1_V3.0.1 example code on NUCLEO-L476RG with IDW01M1 and a I have the same issue. The code hangs in this loop
while(IO_status_flag.WiFi_WIND_State.WiFiHWStarted != WIFI_TRUE)
{ __NOP(); //nothing to do }Have we resolve this issue?
2017-10-16 02:57 AM
hi,
i use package en.x-cube-wifi1_firmware_v3.0.2.
file wifi_module.c -> check if pin RESET is configure well and go down.
(note than if modify code because bug! :
// RESET_WAKEUP_GPIO_CLK_ENABLE();
// __GPIOA_CLK_ENABLE();// wifi_instances.GPIO_InitStruct.Pin = WiFi_RESET_GPIO_PIN; //bug bad init !!!
// 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);
GPIO_InitTypeDef RESET_InitStruct; RESET_WAKEUP_GPIO_CLK_ENABLE(); RESET_InitStruct.Pin = WiFi_RESET_GPIO_PIN; RESET_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; RESET_InitStruct.Pull = GPIO_NOPULL; RESET_InitStruct.Speed = GPIO_SPEED_HIGH;HAL_GPIO_Init(WiFi_RESET_GPIO_PORT, &RESET_InitStruct);
Check on uart module if message starter hardware is received in the buffer after a reset:
parsing buffer Read_DMA_Buffer() is better with _v3.0.2. modificationRx uart with DMA fix process to read Rx buffer. V3.0.1 was uart polling and sometime message was lost (ex: message WiFiHWStarted was never catch!)
Yoann
2017-10-25 08:35 AM
Hi,
i am facing the same issue. I am using Nucleo-F401RE
I am using the package
en.x-cube-wifi1_firmware_v3.0.2
My software was running properly, and I was able to connect to a remote server and trasmit some data over wifi.
But after I performed a reset on the board, now the software is stuck at
while(IO_status_flag.WiFi_WIND_State.WiFiHWStarted != WIFI_TRUE)
{
__NOP(); //nothing to do
}
I did try the above mentioned changes on the RESET pin configuration. But still no success
Any other suggestions on this?
-Raghuram
2017-10-26 11:43 PM
hi,
can you describe full environment you use?
You said 'My software was running properly' and 'But after' -> What did you do/modify?
did you check pin RESET? down/up -|_|-
if RESET is ok, check uart config! ->
if your software is stuck at while , it's because uart doesn't catch message '+WIND:32:WiFi Hardware Started'
yoann