- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,
I’m trying to figure out if the WICED module can be put into a “monitor” or “promiscuous” mode, where it sends all packets to the host MCU (regardless of the intended destination of the packet).
Thanks for any assistance!
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
There is no API for promiscuous mode.
Please try WLC_SET_PROMISC ioctl.
You need to add an API like below.
---
uint32_t *promisc = wiced_get_ioctl_buffer(&buffer, (uint16_t)4);
CHECK_IOCTL_BUFFER(promisc);
*promisc = (uint32_t)1;
retval = wiced_send_ioctl(SDPCM_SET, WLC_SET_PROMISC, buffer, 0, SDPCM_STA_INTERFACE);
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
There is no API for promiscuous mode.
Please try WLC_SET_PROMISC ioctl.
You need to add an API like below.
---
uint32_t *promisc = wiced_get_ioctl_buffer(&buffer, (uint16_t)4);
CHECK_IOCTL_BUFFER(promisc);
*promisc = (uint32_t)1;
retval = wiced_send_ioctl(SDPCM_SET, WLC_SET_PROMISC, buffer, 0, SDPCM_STA_INTERFACE);
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
So, just in case anyone else runs into this - I found the API call after digging a bit:
#include "wwd_wifi.h"
wiced_wifi_enable_monitor_mode();
@dmiya - you were on the right track, but apparently you also need to enable 'allmulti' mode. Check out Wiced/WWD/internal/wwd_wifi.c:1594.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
@dmiya, I apologize - After doing further research I've found that monitor and promiscuous mode are very different things. You were correct about the best way to enable promiscuous mode. Thanks for your help!