Est-il possible d'accéder aux trames d'action 802.11 TX / RX à partir du logiciel? Il existe un protocole propriétaire basé sur des cadres d'action spécifiques au fournisseur appelé ESP-NOW pour les puces ESP8266 et ESP32, et j'aimerais essayer de l'implémenter sur un Raspberry Pi.
Cela a commencé avec mon projet privé où j'ai connecté Raspberry Pi avec ESP8266 (pour échanger des messages courts), puis j'ai remarqué qu'il y avait des API supplémentaires pour ESP8266 (ESP-NOW et Simple Pair) et je voulais comparer les performances à une connexion WiFi ordinaire.
Si ma recherche de détails sur l'accès aux cadres d'action WiFi réussit, je publierai tous les résultats (peut-être une bibliothèque à utiliser dans d'autres applications).
Réponses:
Je parie que les trames ESP-Now peuvent être reniflées en
tshark
utilisant quelque chose commetshark -n -l -i wlp0s29u1u2 -I -y IEEE802_11_RADIO
(ajoutez un-t
type tel queek
oujson
), puis ajoutez un filtre comme-Y 'wlan.fc.type_subtype eq 4'
pour trouver les paquets que vous voulez.Vous pouvez utiliser n'importe quel outil d'injection de paquets compatible sans fil pour envoyer des paquets WiFi. (ie Scapy )
la source
Cela dépend de l'adaptateur WiFi que vous utilisez; certains accordent ce niveau d'accès, d'autres pas, ou du moins pas de manière documentée ou découverte.
Étant donné que le prix des modules de la série ESP est comparable à celui des adaptateurs WiFi USB et sans le souci d'un fournisseur de changer les composants internes sans changer le numéro de pièce, si vous n'avez pas besoin d'un autre réseau ou si vous souhaitez garder cette tâche séparée, vous pouvez simplement utilisez-en une comme interface aérienne pour votre autre système embarqué. Déléguer le travail à une puce ESP pourrait être plus simple que de le réimplémenter de toute façon.
la source