Transmit and receive Raw packet through Wifi SDK

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Transmit and receive Raw packet through Wifi SDK

357 Views
mbiglari
Contributor II

Dear Reader

 

I am working on NXP RW612 SoC and trying to send and receive a raw wifi packet using NXP Wifi driver between two devices without any handshake.

Do you have any idea how I can implement it?

 

The following functions have not been implemented yet, and only their signature is available in the Wifi.h file :

int wifi_raw_packet_send(const t_u8 *packet, t_u32 length);

int wifi_raw_packet_recv(t_u8 **data, t_u32 *pkt_type);

 

Do I need to set the receiver in monitoring mode and use the following function in the transmitter?

 

int wifi_inject_frame(const enum wlan_bss_type bss_type, const uint8_t *buff, const size_t len)

0 Kudos
Reply
5 Replies

231 Views
mbiglari
Contributor II

For more information. I actually need to send and receive data over the 80.11 MAC layer.

0 Kudos
Reply

231 Views
mbiglari
Contributor II

Dear Daniel,

Thank you for your reply.

I have reviewed the wifi_test_mode SDK example. However, this example still creates a STA and uAP. What I actually need is to transmit and receive data without any handshake. Do you know how I can implement that?

Also, I have made significant efforts to use monitor mode, but I haven't been able to start it successfully. Could you please provide a sample code for monitor mode?

Thank you in advance for your support.

Best regards,
Mohsen

0 Kudos
Reply

226 Views
DanielRuvalcaba
NXP TechSupport
NXP TechSupport

Hi,

The wifi_test_mode application demonstrates the CLI support for various RF and regulatory compliance tests.

You will find more details on section 4.9.1.7 Transmit standard 802.11 packets (UM11799).

 

Regards,

Daniel.

217 Views
mbiglari
Contributor II

I have tested the wifi_test_mode example, and I noticed that it only sends an 802.11 frame with a fixed payload pattern.
In my case, I need to send and receive raw 802.11 frames with a custom payload.

Can I use the following function for this purpose?

int wifi_inject_frame(const enum wlan_bss_type bss_type, const uint8_t *buff, const size_t len);

If so, how can I receive the packets on the receiver side?

Thank you in advance for your support.

Best regards,

0 Kudos
Reply

351 Views
DanielRuvalcaba
NXP TechSupport
NXP TechSupport

Hi,

To send raw Wi-Fi packets you can try wifi_test_mode SDK example.

 

Regards,

Daniel.