Stops due to an error during WPS connection

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

cross mob
AkKo_4458241
Level 2
Level 2

Hello.

If a WPS connection is executed using the following functions, it will stop with an error.

Please tell me the cause and countermeasure.

Function used: wiced_wps_enrollee ()

Error stop function:

wps_result_t wps_host_join (void * workspace, wps_ap_t * ap, wwd_interface_t interface)

   {

              ~ Omitted

              ret = (wps_result_t) wwd_wifi_join_specific (& ap-> scan_result, NULL, 0, & semaphore, interface

Omitted

              if (wwd_wifi_is_ready_to_transceive (interface)! = WWD_SUCCESS)

              {

→ Error stop WPS_ERROR (("Failed to join WPS at interface% u \ r \ n", (unsigned int) interface));

Thank you.

0 Likes
1 Solution

Can you add some delay by calling the wiced_rtos_delay_milliseconds API before wwd_wifi_is_ready_to_transceive call inside 43xxx_Wi-Fi/WICED/security/BESL/host/WICED/wiced_wps.c (line #904)?  This is just to check whether the failure is happening because of WWD or something else?

Can you also perform one more experiment? With the same router can you try to connect your mobile or some other client device and see if that is successful.

View solution in original post

9 Replies
RaktimR_11
Moderator
Moderator
Moderator
500 replies posted 250 replies posted 100 replies posted

This means the P2P interface is not ready yet to transreceive packets. Could you please mention at what point you are seeing this error?

0 Likes

Hello

Thank you for your reply.

I saw this error after few seconds from I pushed WPS button of the router.

thank you.

0 Likes

What is the router you are using? I was able to test with Netgear R7000 and did not see any error in my end. If you check the application code, you might be able to find that the preferred association band is set as 5 GHz. Is your router a dual band one or it is 2.4 GHz only?

Kindly make sure that the WPS button is blinking in the router (usually that is the signature signifying the WPS is ON in the router side as well). Sometimes, it may so happen that the physical button is not working, which is why you might be seeing this error. It is better to check in the router gateway page and ensure that WPS mode is on the router side as well.

Hello

Thank you for your reply.

I am using "NEC Wi-Fi STATION N-01J ".
The router is  a dual band(2.4 GHz/5Gz) .

After pressing WPS button on the screen, the message during WPS setting was displayed.
After stopping the error, click “Resume” in WICED-Studio, and the error will stop again. If I repeat about 10 times, it may be able to connect to the router.
How to call is as follows.

wiced_result = wiced_wps_enrollee(WICED_WPS_PBC_MODE, &wps_details, "00000000", &wps_credentials, 1);

static const wiced_wps_device_detail_t wps_details =

{
  .device_name      = PLATFORM,
  .manufacturer      = "Cypress",
  .model_name       = PLATFORM,
  .model_number      = "2.0",
  .serial_number      = "1408248",
  .device_category     = WICED_WPS_DEVICE_COMPUTER,
  .sub_category      = 7,
  .config_methods      = WPS_CONFIG_LABEL | WPS_CONFIG_VIRTUAL_PUSH_BUTTON | WPS_CONFIG_VIRTUAL_DISPLAY_PIN,
  .authentication_type_flags = WPS_OPEN_AUTHENTICATION | WPS_WPA_PSK_AUTHENTICATION | WPS_WPA2_PSK_AUTHENTICATION,
  .encryption_type_flags    = WPS_NO_ENCRYPTION | WPS_MIXED_ENCRYPTION,
};

Thank you.

0 Likes

It's getting a little hard for me to track the error because I can't seem to reproduce the error in my setup. Can you do one thing? Please enable

#define WPRINT_ENABLE_WPS_INFO

#define WPRINT_ENABLE_WPS_DEBUG

#define WPRINT_ENABLE_WPS_ERROR

if not enabled already. Once you do that, please provide the serial terminal log when you are seeing the failure. Please mention also the CY chip you are using.

Hello.

Thank you for your reply.

There is no serial terminal log.

The logs output to the WICED-Studio display are as follows.

Thread 3 "" received signal SIGTRAP, Trace/breakpoint trap.

[Switching to Thread 537077232]

wps_host_join (workspace=0x200325f0, ap=0x2003274c, interface=WWD_STA_INTERFACE) at WICED/security/BESL/host/WICED/wiced_wps.c:906

906             WPS_ERROR( ("WPS join failed on interface %u\r\n", (unsigned int)interface) );

Sorry, what is a CY chip?

Thank you.

0 Likes

Hello.

I am sorry, makefile is not enable..

Serial terminal logs are as follows.

Starting WPS Enrollee

Joining 'N01J-67c08e'

WPS join failed on interface 0

Thank you.

0 Likes

Can you add some delay by calling the wiced_rtos_delay_milliseconds API before wwd_wifi_is_ready_to_transceive call inside 43xxx_Wi-Fi/WICED/security/BESL/host/WICED/wiced_wps.c (line #904)?  This is just to check whether the failure is happening because of WWD or something else?

Can you also perform one more experiment? With the same router can you try to connect your mobile or some other client device and see if that is successful.

Hello.

Thank you for your kind advice.

I avoid to use this router.
I use other router,thre is no problem.
No more advice needed on this issue

Thank you for your kindness.

0 Likes