Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Initial Monitor Mode support #1

Open
wants to merge 4 commits into
base: main
Choose a base branch
from

Conversation

DrSchottky
Copy link

@DrSchottky DrSchottky commented Oct 20, 2023

Added driver patches to enable monitor mode and provided usage example.
Captures raw 802.11 frames w/ or w/o radiotap header (Nexmon required)

Complementary PR
seemoo-lab/nexmon#579

@jlinktu
Copy link
Member

jlinktu commented Oct 25, 2023

Thank you @DrSchottky for your contribution.
I still have to check, but I guess the nexmon patch should be fine.

Regarding this PR:
I think it makes more sense to split up into two applications:

The project is supposed to be configurable with the NO_NEXMON flag, there shouldn't be the need to manually uncomment for switching between w/ and w/o nexmon firmware. Instead, one application sub-directory for the monitor w/o nexmon firmware and one application sub-directory for the monitor_radiotap w/ nexmon firmware should exist, where the latter only gets build if NO_NEXMON is not defined, like it is done for the ioctl_test application here. The build process for the nexmon firmware should also be considered in the CMakeLists.txt of the monitor_radiotap application, just like it is done for the ioctl_test application here.

Regarding the cyw43-driver patch to enable monitor mode: As the modifications are more than minimal, which might prevent us from keeping up with main repo in the future, does it make sense to move this to the main cyw43-driver repo instead? Maybe with a CYW43_MONITOR flag.

Let me know what you think.

@DrSchottky
Copy link
Author

Hello @jlinktu
Okay for splitting the examples.
Regarding cyw43-driver, do you mean to upstream the patch? I can try, but I have little hope that such a change will be approved.
In case it's not, do you think it would be more manageable forking cyw43-driver, patching it, and then importing that?

@jlinktu
Copy link
Member

jlinktu commented Oct 25, 2023

I was thinking about upstreaming it. I mean, monitor mode support seems legit to be included in the driver. If georgerobotics do not want it, we can still use the local patch instead. -> We can add it for now and if they decide to accept it, we can remove our local one. :)

@Frostie314159
Copy link

Would it be possible to allow for the transmission of raw frames? i.e. Injection

@jlinktu
Copy link
Member

jlinktu commented Dec 5, 2023

With the right patch in place, yes, this would be possible.

@Frostie314159
Copy link

Do you have some pointers where I should look for this, since I would love to implement AWDL and ESP-NOW on the rp pico w, but lack support for injection.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants