Aller au contenu

+49 1626571232

info@openelab.io

🚀 Livraison gratuite à partir de 50€ dans l'UE / 80€ dans le monde entier

FAQ

ESP-NOW : Huit points que vous devez connaître

08 Jul 2024 0 commentaires
ESP-NOW est un protocole de communication sans fil développé spécifiquement pour ses microcontrôleurs ESP8266 et ESP32. Il fournit une solution de communication sans fil à faible consommation, sécurisée, peu coûteuse et simple pour les appareils ESP32. Avec ESP-NOW, plusieurs appareils ESP32 peuvent communiquer entre eux sans avoir besoin de WiFi ou de routeurs, créant ainsi un réseau maillé d'appareils.
 
 

Qu'est-ce que l'ESP-NOW ?

 
esp-now est un protocole de communication léger conçu pour fournir une solution de communication sans connexion efficace et fiable. Il est conçu pour les appareils embarqués et est particulièrement adapté à la famille de puces ESP d'Espressif Systems.
 
esp-now utilise le matériel Wi-Fi existant pour fournir une communication directe entre un à plusieurs et plusieurs à plusieurs appareils sans avoir besoin de passer par un routeur ou un autre appareil intermédiaire.
 
Avec ESP-NOW, nous pouvons avoir une communication unidirectionnelle ou même bidirectionnelle entre les appareils ESP MCU sans avoir besoin d'un réseau Wi-Fi. Il permet un transfert de données sans fil point à point à faible surcharge, mais avec des paquets plus petits. Jusqu'à 250 octets de données peuvent être transférés. Par conséquent, si une grande quantité de données doit être transmise, l’utilisation de ce protocole n’est pas utile.
 
Avec ESP-NOW, le protocole de connexion est simplifié, ce qui réduit la consommation d'énergie car moins de temps est nécessaire pour la transmission des données. De plus, ESP-NOW utilise la même bande de 2,4 GHz que le Wi-Fi, mais ne nécessite pas de connexion ni n'interfère avec la connexion au réseau local. Il s'agit d'un protocole de communication rapide et pratique permettant de transmettre de petites quantités de données.
 

  

Principe de fonctionnement de l'ESP-NOW

Le principe de fonctionnement d'esp-now est relativement simple, il est basé sur l'implémentation de la couche MAC du Wi-Fi. Voici le flux de travail d'esp-now :
  • Initialisation : initialisez la bibliothèque esp-now et configurez le rôle de l'appareil (expéditeur ou récepteur).
  • Appairage : Avant la communication, l’expéditeur et le destinataire doivent effectuer une opération d’appairage. Pendant le processus d'appairage, l'expéditeur envoie son adresse MAC au destinataire pour établir une relation de confiance. 3.
  • Envoyer des données : l'expéditeur envoie un paquet au destinataire à l'aide de l'API fournie par la bibliothèque esp-now. Le paquet peut contenir n'importe quel type de données, telles que des informations de configuration réseau, un fichier de mise à niveau du micrologiciel ou des informations de débogage.
  • Recevoir des données : le récepteur écoute le canal Wi-Fi et reçoit des paquets de l'expéditeur. Une fois le paquet reçu, le récepteur déclenchera la fonction de rappel () pour le traiter. 5.
  • Traitement des données : le récepteur traite le paquet reçu via la fonction de rappel. Selon le type de paquet, le récepteur peut effectuer les opérations correspondantes, telles que la mise à jour de la configuration réseau, la mise à niveau du micrologiciel ou le débogage.
 

Caractéristiques de l'ESP-NOW

esp-now possède les fonctionnalités suivantes qui lui confèrent un avantage dans la transmission de données à grande échelle :
  • Faible latence : esp-utilise désormais le Wi-Fi pour communiquer directement sans passer par un routeur ou d'autres appareils intermédiaires, réduisant ainsi la latence de transmission.
  • Haute fiabilité : esp-now utilise le mécanisme fiable ARQ() (Automatic Retransmission Request) pour garantir une transmission de données fiable.
  • Faible consommation d'énergie : esp-now utilise une conception à faible consommation d'énergie pour les appareils intégrés afin de réduire la consommation d'énergie tout en maintenant la qualité de la communication.
  • Flexibilité : esp-now prend en charge la connexion et le contrôle d'appareils un à plusieurs et plusieurs à plusieurs, ce qui peut répondre aux besoins de différents scénarios d'application.
  • Facilité d'utilisation : l'API facile à utiliser d'esp-now permet aux développeurs d'intégrer et de déployer rapidement le protocole.
  • Transfert de données individuel (crypté et non crypté).
  • Prise en charge des appareils homologues chiffrés et non chiffrés. Pour les appareils chiffrés, il y a jusqu'à 10 pairs en mode Workstation et jusqu'à 6 pairs en SoftAP ou une combinaison des deux modes. Toutefois, pour les appareils non chiffrés, un maximum de 19 appareils sont autorisés sans aucune restriction quant à leur mode de fonctionnement.
  • Un maximum de 250 octets de données peuvent être transmis en petits paquets.
  • Il génère une fonction de rappel qui informe la couche application si le transfert de données a réussi.
Pour initialiser la connexion ESP-NOW, il faut d'abord appairer les cartes ESP32. La connexion restera quel que soit le redémarrage de la carte et le transfert se poursuivra sans aucun problème.

 

Quels facteurs affectent ESP-NOW ?

La portée de l'ESP-NOW dépend d'un certain nombre de facteurs, notamment la conception et la configuration de l'antenne et l'environnement d'exploitation. En général, ESP-NOW peut avoir une portée allant jusqu'à 220 mètres (772 pieds) ; cependant, ces plages sont approximatives et peuvent varier considérablement selon les circonstances.
Les facteurs pouvant affecter la gamme ESP-NOW incluent :
  • Interférence RF : ESP-NOW fonctionne dans la bande 2,4 GHz, qui est partagée avec d'autres technologies sans fil telles que Bluetooth et WiFi. Cela signifie qu'il peut y avoir des interférences provenant d'autres appareils fonctionnant dans la même bande.
  • Environnement d'exploitation : La portée de l'ESP-NOW peut être affectée par des barrières physiques telles que les murs, les plafonds et les sols, ainsi que par des facteurs environnementaux tels que la température, l'humidité et la pression atmosphérique.
  • Conception de l'antenne : La portée de l'ESP-NOW peut être affectée par le type et la conception de l'antenne utilisée. Par exemple, l'utilisation d'une antenne directionnelle peut augmenter la portée de l'ESP-NOW, tandis que l'utilisation d'une antenne omnidirectionnelle peut diminuer la portée.
 

ESP-NOW est-il sécurisé ?

Vous pouvez sécuriser les communications ESP-NOW de plusieurs manières pour les garder sécurisées et privées :
  • Cryptage des données : le cryptage des données est l'un des moyens les plus utiles pour sécuriser les communications ESP-NOW. Vous pouvez chiffrer les données à l'aide de différents algorithmes de chiffrement, tels que AES ou RSA. Le cryptage des données empêchera quiconque d'intercepter et de lire les données transmises.
  • Utilisation des clés de sécurité : ESP-NOW prend en charge l'utilisation de clés de sécurité pour authentifier et établir des connexions entre les appareils. En utilisant des clés de sécurité, vous pouvez garantir que seuls les appareils autorisés peuvent communiquer entre eux.
  • Utilisez des protocoles de communication sécurisés : si la sécurité de votre application nécessite des mesures de sécurité plus avancées, vous pouvez envisager d'utiliser un autre protocole de communication, tel que le WiFi, qui prend en charge de manière intégrée le cryptage et l'authentification.
  • Utilisez une couche de sécurité distincte : dans certains cas, il peut être utile d'utiliser une couche de sécurité distincte au-dessus d'ESP-NOW pour fournir une sécurité supplémentaire. Par exemple, vous pouvez utiliser un protocole de tunneling sécurisé, tel que HTTPS, pour protéger les données transmises via ESP-NOW. Quels types de communication sont disponibles avec ESP-NOW ?
 

Communication unidirectionnelle ESP-NOW sur ESP32

Dans une communication unidirectionnelle, un appareil homologue agit en tant qu'expéditeur/maître et l'autre en tant que récepteur/esclave. Dans ce cas, nous pouvons avoir plusieurs configurations pour l'émetteur-récepteur.
  • Une carte ESP32 envoie des données à une autre carte ESP32
Comme le montre la figure ci-dessous, une carte ESP32 agit comme un émetteur et l'autre carte reçoit des données et agit donc comme un récepteur.
Utilisation : envoi de données de capteur, contrôle des sorties ESP, y compris LED, relais, buzzers, etc.

  • Une carte émettrice ESP32 envoyant des données à diverses autres cartes réceptrices ESP32
Dans ce cas, une carte ESP32 agira comme émetteur/maître et enverra des données à plusieurs cartes ESP32 agissant comme dispositifs récepteurs/esclaves.
Utilisation : Télécommande
  • Une carte ESP32 reçoit des données de diverses autres cartes émettrices ESP32
Enfin, dans ce cas, une carte ESP32 (récepteur/esclave) reçoit les données de plusieurs cartes ESP32 (émetteur/maître).
Objectif : Recevoir les données des capteurs de divers capteurs.

Ou même disposer d'un réseau de cartes ESP32 pour transférer des données :
 
 

Dans quels domaines l'ESP-NOW peut-il être utilisé ?

ESP-NOW a une large gamme d'applications dans divers scénarios d'application, en particulier dans le transfert de données à grande échelle. Voici quelques scénarios d’application courants :
  • Configuration réseau : esp-now peut être utilisé pour transférer rapidement les informations de configuration réseau afin que les appareils puissent facilement se connecter à un réseau Wi-Fi spécifié.
  • Mise à niveau du micrologiciel : grâce à esp-now, les appareils peuvent recevoir des fichiers de mise à niveau du micrologiciel et effectuer l'opération de mise à niveau en conséquence - Débogage et contrôle à distance : esp-now peut être utilisé pour déboguer et contrôler l'appareil à distance, ce qui permet aux développeurs d'effectuer facilement le dépannage et tests de fonctionnement.
  • Transmission de données de capteur : esp-now peut être utilisé pour transmettre des données de capteur, telles que la température, l'humidité, etc., afin d'effectuer une surveillance et une collecte de données en temps réel.
  • Contrôle de la maison intelligente : esp-now peut être utilisé pour la communication et le contrôle entre les appareils de la maison intelligente, tels que les ampoules intelligentes, les prises intelligentes, etc.
  • Automatisation industrielle : esp-now a un potentiel dans le domaine de l'automatisation industrielle pour la transmission et le contrôle de données en temps réel entre les appareils.

 

Vous voudrez peut-être aussi demander

Quel est le débit binaire un à un pour ESP32 en mode ESP-NOW ?

Résultat du test :
  • Carte de test : ESP32-DevKitC V4.
  • Mode Wi-Fi : station.
  • Le taux PHY est de 1 Mbps par défaut.
  • Environ 214 Kbps dans un environnement ouvert.
  • Environ 555 Kbps dans la boîte de protection.
  • Si vous avez besoin d'un débit plus élevé, il est possible de configurer le débit via esp_wifi_config_espnow_rate.
 

Le Wi-Fi peut-il être utilisé avec ESP-NOW en même temps ?

Oui, mais il faut savoir que le canal de l'ESP-NOW doit être le même que celui du point d'accès connecté.
 

Comment puis-je définir la vitesse à laquelle les données ESP-NOW sont envoyées ?

Vous pouvez utiliser la fonction esp_wifi_config_espnow_rate() pour configurer le débit, par exemple esp_wifi_config_espnow_rate(WIFI_IF_STA, WIFI_ PHY_RATE_MCS0_LGI) .
 

ESP-NOW permet le couplage avec un maximum de 20 appareils. Existe-t-il un moyen de contrôler plus d’appareils ?

Vous pouvez utiliser des paquets de diffusion et fournir les adresses de destination dans la charge utile. Le nombre d'adresses ne serait alors pas affecté par le nombre limité. Il vous suffit de configurer la bonne adresse de diffusion.
Pour plus de questions, consultez la documentation : ESP-NOW

 

Article précédent
Prochain article

laissez un commentaire

Tous les commentaires du blog sont vérifiés avant la publication

Quelqu'un a récemment acheté un

Merci pour votre subscription!

Cet email a été enregistré !

Achetez le look

Choisissez les options

Modifier l'option
Notification de retour en stock
this is just a warning
Se connecter
Panier
0 articles
RuffRuff App RuffRuff App by Tsun