{"id":5529,"date":"2023-06-27T09:16:03","date_gmt":"2023-06-27T09:16:03","guid":{"rendered":"https:\/\/sites.hslu.ch\/werkstatt\/?p=5529"},"modified":"2023-08-21T09:04:51","modified_gmt":"2023-08-21T09:04:51","slug":"send-data-wireless","status":"publish","type":"post","link":"https:\/\/sites.hslu.ch\/werkstatt\/send-data-wireless\/","title":{"rendered":"Send Data Wirelessly"},"content":{"rendered":"<div class=\"wpb-content-wrapper\"><p>[vc_section el_class=&#187;dkw-section-lead&#187;][vc_row][vc_column width=&#187;2\/3&#8243; offset=&#187;vc_col-sm-offset-2&#8243;][vc_column_text]In diesem Recipie schauen wir uns an wie wir die ESP Microcontroller nutzen k\u00f6nnen um Daten per WiFi versenden und empfangen zu k\u00f6nnen. Was f\u00fcr Daten du versendest oder was die Empfangenen Daten ausl\u00f6sen kann nat\u00fcrlich von Projekt zu Projekt variieren. In diesem Beispiel verwenden wir das ESPNOW Protokoll um ein Wifi aufzubauen und einen fliegenden Wal fernzusteuern.[\/vc_column_text][\/vc_column][\/vc_row][\/vc_section][vc_section el_class=&#187;dkw-section-content&#187;][vc_row][vc_column width=&#187;1\/3&#8243; el_class=&#187;dkw-col-toc&#187; offset=&#187;vc_col-lg-3&#8243;][vc_column_text]<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_82_2 counter-hierarchy ez-toc-counter ez-toc-grey ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<span class=\"ez-toc-title-toggle\"><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/sites.hslu.ch\/werkstatt\/send-data-wireless\/#Prolog\" >Prolog<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/sites.hslu.ch\/werkstatt\/send-data-wireless\/#Airborne_Adornments_von_Tobias_Bieri\" >Airborne Adornments von Tobias Bieri<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/sites.hslu.ch\/werkstatt\/send-data-wireless\/#Vorbereitung\" >Vorbereitung<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/sites.hslu.ch\/werkstatt\/send-data-wireless\/#Bill_of_Material\" >Bill of Material<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/sites.hslu.ch\/werkstatt\/send-data-wireless\/#File_Download_Code\" >File Download: Code<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/sites.hslu.ch\/werkstatt\/send-data-wireless\/#Hardware\" >Hardware<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/sites.hslu.ch\/werkstatt\/send-data-wireless\/#Wieso_der_XIAO_ESP_32-_C3_Microcontroller\" >Wieso der XIAO ESP 32- C3 Microcontroller?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/sites.hslu.ch\/werkstatt\/send-data-wireless\/#Wieso_der_Adafruit_QT_Py_ESP32-s2_Microcontroller\" >Wieso der Adafruit QT Py ESP32-s2 Microcontroller?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/sites.hslu.ch\/werkstatt\/send-data-wireless\/#Achtung_33V_Logik\" >Achtung 3.3V Logik<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/sites.hslu.ch\/werkstatt\/send-data-wireless\/#Software\" >Software<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"https:\/\/sites.hslu.ch\/werkstatt\/send-data-wireless\/#Arduino-IDE_installieren\" >Arduino-IDE installieren<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-12\" href=\"https:\/\/sites.hslu.ch\/werkstatt\/send-data-wireless\/#Seeedstudio_XIAO_und_Adafruit_QT_Py_im_Boardsmanager_der_Arduino-IDE_installieren\" >Seeedstudio XIAO und Adafruit QT Py im Boardsmanager der Arduino-IDE installieren<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-13\" href=\"https:\/\/sites.hslu.ch\/werkstatt\/send-data-wireless\/#Libraries_in_der_Arduino_IDE_installieren\" >Libraries in der Arduino IDE installieren<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-14\" href=\"https:\/\/sites.hslu.ch\/werkstatt\/send-data-wireless\/#Aufbau\" >Aufbau<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-15\" href=\"https:\/\/sites.hslu.ch\/werkstatt\/send-data-wireless\/#Sender_mit_Gyro-_und_Drucksensor\" >Sender mit Gyro- und Drucksensor<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-16\" href=\"https:\/\/sites.hslu.ch\/werkstatt\/send-data-wireless\/#Empfaenger_mit_Servos\" >Empf\u00e4nger mit Servos<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-17\" href=\"https:\/\/sites.hslu.ch\/werkstatt\/send-data-wireless\/#Code_Upload\" >Code Upload<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-18\" href=\"https:\/\/sites.hslu.ch\/werkstatt\/send-data-wireless\/#1_Mac_Adresse_des_Empfaengers_abrufen\" >1.) Mac Adresse des Empf\u00e4ngers abrufen<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-19\" href=\"https:\/\/sites.hslu.ch\/werkstatt\/send-data-wireless\/#2_Mac_Adresse_einfuegen_und_Datenuebertragung_testen\" >2.) Mac Adresse einf\u00fcgen und Daten\u00fcbertragung testen<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-20\" href=\"https:\/\/sites.hslu.ch\/werkstatt\/send-data-wireless\/#3_Applikationen_mit_zusaetzlichen_Sensoren_und_Servos_erweitern\" >3.) Applikationen mit zus\u00e4tzlichen Sensoren und Servos erweitern<\/a><\/li><\/ul><\/li><\/ul><\/nav><\/div>\n[\/vc_column_text][\/vc_column][vc_column width=&#187;2\/3&#8243; el_class=&#187;dkw-col-content&#187; offset=&#187;vc_col-lg-6&#8243;][vc_column_text]<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Prolog\"><\/span>Prolog<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>F\u00fcr diesen Versuch ben\u00f6tigen wir 2 ESP Boards, eines als Sender das andere als Empf\u00e4nger. Sowohl ESP32 und ESP8266 funktionieren in fast allen Geschmacksrichtungen.<\/p>\n<p>Die Bluetooth- und WiFi-F\u00e4higkeiten dieser Ger\u00e4te werden durch ein integriertes 2,4-GHz-Funk-Modul erm\u00f6glicht. Dieses Modul kann auch f\u00fcr andere Kommunikationsanwendungen verwendet werden, die das nicht lizenzierte 2,4-GHz-Band nutzen.<\/p>\n<p>Espressif, die Hersteller des ESP8266 und ESP32, haben ein Protokoll entwickelt, das es all diesen Ger\u00e4ten erm\u00f6glicht, ein privates, drahtloses Netzwerk aufzubauen. Dies ist ein vom WiFi-Netzwerk getrenntes Netzwerk, das nur von Mikrocontrollern des ESP-Typs genutzt werden kann.<\/p>\n<h4><span class=\"ez-toc-section\" id=\"Airborne_Adornments_von_Tobias_Bieri\"><\/span>Airborne Adornments von Tobias Bieri<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Tobias Bieri hat f\u00fcr sein BA Projekt in XS Schmuck &#171;Airborne Adornments&#187; einen fliegenden Walfisch konstruiert, der \u00fcber einen eigens daf\u00fcr entwickelten Controller Ferngesteuert werden kann. Der Controller Versendet Daten von Druck- und Gyroskopsensoren und steuert damit die Bewegungsmuster der Schwanz- und Brustflossen des fliegenden Wals.\u00a0 <img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-5580\" src=\"https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/Airborne_Adornments_1-1000x574.png\" alt=\"\" width=\"1000\" height=\"574\" srcset=\"https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/Airborne_Adornments_1-1000x574.png 1000w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/Airborne_Adornments_1-768x441.png 768w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/Airborne_Adornments_1-1536x882.png 1536w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/Airborne_Adornments_1-2048x1175.png 2048w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/Airborne_Adornments_1-848x487.png 848w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/Airborne_Adornments_1-1140x654.png 1140w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/Airborne_Adornments_1-1170x671.png 1170w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/Airborne_Adornments_1-1920x1102.png 1920w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/Airborne_Adornments_1-600x344.png 600w\" sizes=\"auto, (max-width: 1000px) 100vw, 1000px\" \/><\/p>\n<h3><span class=\"ez-toc-section\" id=\"Vorbereitung\"><\/span>Vorbereitung<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>F\u00fcr unser Experiment nutzten wir zwei verschiedene Boards: Als Sender Seeedstudio XIAO ESP32-C3 und als Empf\u00e4nger das Adafruit QT Py ESP32-S2. Auf den Grund f\u00fcr diesen Mix an Boards wird im Hardware Abschnitt n\u00e4her eingegangen.<\/p>\n<h4><span class=\"ez-toc-section\" id=\"Bill_of_Material\"><\/span>Bill of Material<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p><strong>Sender<\/strong><\/p>\n<ul>\n<li><a href=\"https:\/\/wiki.seeedstudio.com\/XIAO_ESP32C3_Getting_Started\/\">Seeedstudio XIAO ESP32-C3<\/a><\/li>\n<li>16340 Batterie Shield<\/li>\n<li>16340 Li-Ion Batterie<\/li>\n<li>1x kOhm Wiederstand<\/li>\n<li>1x analoger Drucksensor<\/li>\n<li>1x GY87 Gyroskop Sensor<\/li>\n<\/ul>\n<p><strong>Empf\u00e4nger<\/strong><\/p>\n<ul>\n<li><a href=\"https:\/\/learn.adafruit.com\/adafruit-qt-py-esp32-s2\">Adafruit <\/a><a href=\"https:\/\/learn.adafruit.com\/adafruit-qt-py-esp32-s2\">QT<\/a><a href=\"https:\/\/learn.adafruit.com\/adafruit-qt-py-esp32-s2\"> Py ESP32-S2<\/a><\/li>\n<li><a href=\"https:\/\/learn.adafruit.com\/adafruit-qt-py-charger-bff\">Adafruit QT Py LiPoly Charger BFF<\/a><\/li>\n<li>3x Micro servo &#8211; TowerPro SG92R<\/li>\n<\/ul>\n<p><strong>Allgemein<\/strong><\/p>\n<ul>\n<li>Litzen 26AWG<\/li>\n<li>Prototypenboard<\/li>\n<li>Ein wenig L\u00f6tzinn<\/li>\n<\/ul>\n<h3><span class=\"ez-toc-section\" id=\"File_Download_Code\"><\/span>File Download: Code<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Die .ino- Files (Arduino Code) f\u00fcr den Aufbau dieses Recipies findest du hier:<\/p>\n<p><a href=\"https:\/\/github.com\/MediaDock\/ESPNOW_RemoteControl\">https:\/\/github.com\/MediaDock\/ESPNOW_RemoteControl<\/a><\/p>\n<h3><span class=\"ez-toc-section\" id=\"Hardware\"><\/span>Hardware<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<h4><span class=\"ez-toc-section\" id=\"Wieso_der_XIAO_ESP_32-_C3_Microcontroller\"><\/span>Wieso der XIAO ESP 32- C3 Microcontroller?<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Wie schon erw\u00e4hnt sollte ESPNOW auf allen ESP32 und ESP8266 laufen. Die Wahl f\u00fcr diesen Micorcontroller war der Formfaktor. Tobias Bieri wollte in seinem Projekt einen fliegenden ferngesteuerten Fisch bauen und da das Helium in diesem Ballon nur einen begrenzten Auftrieb produzieren kann mussten wir mit der Elektronik so leicht und klein wie irgendwie M\u00f6glich werden. Aufgrund dessen entschieden wir uns zuerst f\u00fcr ein Setup mit 2 XIAO ESP 32-C3 Controllern. Das Messen, Versenden wie Empfangen von Sensorwerten funktionert einwandfrei mit diesen kleinen Boards.<\/p>\n<h4><span class=\"ez-toc-section\" id=\"Wieso_der_Adafruit_QT_Py_ESP32-s2_Microcontroller\"><\/span>Wieso der Adafruit QT Py ESP32-s2 Microcontroller?<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Alles schien in der ersten Testphase mit 2 XIAO Mikrokontroller gut zu funktionieren: die Kommunikation\u00a0 reibungslos und die Daten wurden zuverl\u00e4ssig versendet und empfangen. Wir wollten mit den empfangenen Daten aber Servos betreiben. Der XIAO ESP32-c3 Microcontroller war zum Zeitpunkt der Entwicklung in unserem Setting nicht f\u00e4hig einen Servo sauber \u00fcber PMW anzusteuern. Weshalb wir den Entscheid f\u00e4llten auf ein anderes Chipset zu wechseln. Mit dem QT Py ESP32-S2 mit gleichem Footprint gefunden, dass mit einer Library Reibungslos funktionierte und mit unseren Servos kommunizieren konnte.<\/p>\n<h4><span class=\"ez-toc-section\" id=\"Achtung_33V_Logik\"><\/span>Achtung 3.3V Logik<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Bitte beachte unbedingt, dass XIAO sowie Adafruit QT PY mit einer 3.3V Logik l\u00e4uft! 5V k\u00f6nnen das Board besch\u00e4digen und den <a href=\"https:\/\/en.wikipedia.org\/wiki\/Magic_smoke\">Magic Smoke<\/a>\u00a0provozieren!<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Software\"><\/span>Software<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<h4><span class=\"ez-toc-section\" id=\"Arduino-IDE_installieren\"><\/span>Arduino-IDE installieren<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Lade die Arduino-IDE herunter und installiere sie entsprechend deinem Betriebssystem:<\/p>\n<ul>\n<li><a href=\"https:\/\/www.arduino.cc\/en\/software\">Arduino Software Download.<\/a><\/li>\n<\/ul>\n<p>Falls du einen Guide f\u00fcr die Installation der Arduino-IDE brauchst, findest du ihn hier:<\/p>\n<ul>\n<li><a href=\"https:\/\/www.arduino.cc\/en\/Guide\">Getting Started with Arduino<\/a><\/li>\n<\/ul>\n<h4><span class=\"ez-toc-section\" id=\"Seeedstudio_XIAO_und_Adafruit_QT_Py_im_Boardsmanager_der_Arduino-IDE_installieren\"><\/span><span id=\"Seeedstudio_XIAO_im_Boardsmanager_der_Arduino-IDE_installieren\" class=\"ez-toc-section\"><\/span>Seeedstudio XIAO und Adafruit QT Py im Boardsmanager der Arduino-IDE installieren<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Bevor wir die Arduino IDE mit den Boards verwenden k\u00f6nnen, m\u00fcssen wir einen weiteren Boardmanager installieren. Wir m\u00fcssen folgende zwei Schritte unternehmen: die Installation des neuen Boardmanagers und die Installation der Boards selbst.<\/p>\n<h5>1. Installiere den Seeeduino ESP und Adafruit QT Py im Boards Manager<\/h5>\n<p>Seeedstudio verf\u00fcgt \u00fcber einen Boardmanager, der mit dem XIAO und vielen anderen Seeeduino-Produkten funktioniert. Er kann wie folgt installiert werden:<\/p>\n<ul>\n<li>\u00d6ffne die Arduino-IDE<\/li>\n<li>Klicken auf das Men\u00fc\n<ul>\n<li>Mac: \u2039Arduino\u203a\u00a0 und dann auf \u2039Preferences\u203a<\/li>\n<li>Windows: \u2039File\u203a und dann auf \u2039Preferences\u203a<\/li>\n<\/ul>\n<\/li>\n<li>Das Fenster \u2039Einstellungen\u203a wird ge\u00f6ffnet.<\/li>\n<li>Suche das Textfeld \u2039<strong>Additional Boards Manager URLs\u203a<\/strong>\u00a0am unteren Rand des Einstellungsfensters.<\/li>\n<\/ul>\n<p>\u00d6ffne dieses Feld mit einem klick auf das Symbol rechts:<\/p>\n<h4><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-3596\" src=\"https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2022\/04\/Arduino_IDE_Boardsmanager-635x600.png\" alt=\"\" width=\"635\" height=\"600\" srcset=\"https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2022\/04\/Arduino_IDE_Boardsmanager-635x600.png 635w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2022\/04\/Arduino_IDE_Boardsmanager-1905x1800.png 1905w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2022\/04\/Arduino_IDE_Boardsmanager-768x726.png 768w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2022\/04\/Arduino_IDE_Boardsmanager-1536x1451.png 1536w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2022\/04\/Arduino_IDE_Boardsmanager-848x801.png 848w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2022\/04\/Arduino_IDE_Boardsmanager-1140x1077.png 1140w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2022\/04\/Arduino_IDE_Boardsmanager-1170x1105.png 1170w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2022\/04\/Arduino_IDE_Boardsmanager.png 1918w\" sizes=\"auto, (max-width: 635px) 100vw, 635px\" \/><\/h4>\n<p>Kopiere folgende URLs und f\u00fcge sie der Liste hinzu:<\/p>\n<pre>https:\/\/files.seeedstudio.com\/arduino\/package_seeeduino_boards_index.json<\/pre>\n<h4><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-3597\" src=\"https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2022\/04\/Arduino_IDE_Boardsmanager_Copypaste-634x600.png\" alt=\"\" width=\"634\" height=\"600\" srcset=\"https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2022\/04\/Arduino_IDE_Boardsmanager_Copypaste-634x600.png 634w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2022\/04\/Arduino_IDE_Boardsmanager_Copypaste-1901x1800.png 1901w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2022\/04\/Arduino_IDE_Boardsmanager_Copypaste-768x727.png 768w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2022\/04\/Arduino_IDE_Boardsmanager_Copypaste-1536x1454.png 1536w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2022\/04\/Arduino_IDE_Boardsmanager_Copypaste-848x803.png 848w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2022\/04\/Arduino_IDE_Boardsmanager_Copypaste-1140x1080.png 1140w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2022\/04\/Arduino_IDE_Boardsmanager_Copypaste-1170x1108.png 1170w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2022\/04\/Arduino_IDE_Boardsmanager_Copypaste-1920x1818.png 1920w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2022\/04\/Arduino_IDE_Boardsmanager_Copypaste.png 1922w\" sizes=\"auto, (max-width: 634px) 100vw, 634px\" \/><\/h4>\n<h5>2. Installiere die ESP32 Boards<\/h5>\n<p>Nun, da der neue Boardsmanager in deiner Arduino-IDE installiert wurde, kannst du den letzten Schritt durchf\u00fchren \u2013 die Installation der ESP32 Boards selbst.<\/p>\n<p>Zum \u00d6ffnen des Boardsmanagers gehe zum Men\u00fcpunkt \u2039Tools\u203a im oberen Men\u00fc und w\u00e4hle \u2039Boards Manager\u203a oder klicke bei der neuen Arduino-IDE auf das Boardsmanager-Icon links im Fenster. Danach kannst du \u00fcber \u2039Filter your search\u203a das <strong><em>esp32<\/em><\/strong> suchen und installieren.<\/p>\n<p>Danach solltest du beide Boards im Boardsmanager unter ESP32 Arduino finden.<\/p>\n<h4><span class=\"ez-toc-section\" id=\"Libraries_in_der_Arduino_IDE_installieren\"><\/span><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-3599\" src=\"https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2022\/04\/Arduino_IDE_Boardsmanager_insttallboard-900x410.png\" alt=\"\" width=\"900\" height=\"410\" srcset=\"https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2022\/04\/Arduino_IDE_Boardsmanager_insttallboard-900x410.png 900w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2022\/04\/Arduino_IDE_Boardsmanager_insttallboard-768x350.png 768w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2022\/04\/Arduino_IDE_Boardsmanager_insttallboard-1536x700.png 1536w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2022\/04\/Arduino_IDE_Boardsmanager_insttallboard-848x386.png 848w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2022\/04\/Arduino_IDE_Boardsmanager_insttallboard-1140x519.png 1140w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2022\/04\/Arduino_IDE_Boardsmanager_insttallboard-1170x533.png 1170w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2022\/04\/Arduino_IDE_Boardsmanager_insttallboard.png 1918w\" sizes=\"auto, (max-width: 900px) 100vw, 900px\" \/>Libraries in der Arduino IDE installieren<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Wir brauchen nur eine spezielle Library um die Servos auf Seiten des Empf\u00e4ngerszu betreiben:<\/p>\n<div>\n<ul>\n<li><a href=\"https:\/\/reference.arduino.cc\/reference\/en\/libraries\/esp32_s2_isr_servo\/\">ESP32_S2_ISR_Servo.h<\/a>\u00a0 \u00a0Author:\u00a0Khoi Hoang<\/li>\n<\/ul>\n<\/div>\n<p>Alles installiert? Dann geht es los mit dem Aufbau! L\u00f6te die Komponenten wie im Diagramm aufgezeigt zusammen.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Aufbau\"><\/span>Aufbau<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Das Wiring unseres Versuchs kannst du wie folgt vornehmen: Beim Sender haben wir einen Druck- und einen Gyrosensor angeh\u00e4ngt selbst verst\u00e4ndlich kannst du auch andere Sensoren anh\u00e4ngen und die damit gemessenen Daten versenden.<\/p>\n<h4><span class=\"ez-toc-section\" id=\"Sender_mit_Gyro-_und_Drucksensor\"><\/span>Sender mit Gyro- und Drucksensor<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<h4><span class=\"ez-toc-section\" id=\"Empfaenger_mit_Servos\"><\/span><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-5561\" src=\"https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/ESPNOW_Tranceiver_Wiring-1000x578.png\" alt=\"\" width=\"1000\" height=\"578\" srcset=\"https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/ESPNOW_Tranceiver_Wiring-1000x578.png 1000w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/ESPNOW_Tranceiver_Wiring-768x444.png 768w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/ESPNOW_Tranceiver_Wiring-1536x887.png 1536w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/ESPNOW_Tranceiver_Wiring-2048x1183.png 2048w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/ESPNOW_Tranceiver_Wiring-848x490.png 848w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/ESPNOW_Tranceiver_Wiring-1140x658.png 1140w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/ESPNOW_Tranceiver_Wiring-1170x676.png 1170w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/ESPNOW_Tranceiver_Wiring-1920x1109.png 1920w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/ESPNOW_Tranceiver_Wiring-600x347.png 600w\" sizes=\"auto, (max-width: 1000px) 100vw, 1000px\" \/>Empf\u00e4nger mit Servos<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Der Empf\u00e4nger verarbeitet die Daten vom Gyrosensor und l\u00f6st je nach Signal ein bestimmtes Bewegungsmuster im Sensor aus. Du kannst bis zu 4 Servos am Adafruit QT Py ESP32-S2 anh\u00e4ngen. Bitte beachte aber, dass f\u00fcr die Servos unter umst\u00e4nden eine Externe Stromversorgung n\u00f6tig ist! Die Stromversorgung des Boards alleine kann problemlos ein bis zwei MicroServos mit Strom versorgen. Willst du mehr oder gr\u00f6ssere Servos betreiben solltest du unbedingt eine externe Stromversorgung nutzen.<\/p>\n<h3><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-5566\" src=\"https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/ESPNOW_Receiver-1000x573.png\" alt=\"\" width=\"1000\" height=\"573\" srcset=\"https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/ESPNOW_Receiver-1000x573.png 1000w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/ESPNOW_Receiver-768x440.png 768w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/ESPNOW_Receiver-1536x880.png 1536w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/ESPNOW_Receiver-2048x1173.png 2048w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/ESPNOW_Receiver-848x486.png 848w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/ESPNOW_Receiver-1140x653.png 1140w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/ESPNOW_Receiver-1170x670.png 1170w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/ESPNOW_Receiver-1920x1100.png 1920w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/ESPNOW_Receiver-600x344.png 600w\" sizes=\"auto, (max-width: 1000px) 100vw, 1000px\" \/><\/h3>\n<h3><span class=\"ez-toc-section\" id=\"Code_Upload\"><\/span>Code Upload<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Das ESPNOW Protokoll l\u00e4sst sich in verschiedenen Szenarien nutzen: wir k\u00f6nnen die Daten an verschiedene Ger\u00e4te versenden und ein Mesh Netzwerk aubauen in dem jedes Board sowohl Empf\u00e4nger als auch Sender ist. Oder wir versenden unsere Daten an ein spezifisches Ger\u00e4t. In diesem Beispiel nutzen wir die MAC- Adresse um unsere Daten <strong>nur\u00a0<\/strong>an unseren Empf\u00e4nger zu senden.<\/p>\n<p>Wenn du mehr \u00fcber dieses Protokoll wissen willst empfehle ich dir diesen Beitrag von <a href=\"https:\/\/dronebotworkshop.com\/esp-now\/\">DroneBotWorkshop<\/a> der eine sehr gute Zusammenfassung der M\u00f6glichkeiten von diesem Protokoll aufzeigt.<\/p>\n<h4><span class=\"ez-toc-section\" id=\"1_Mac_Adresse_des_Empfaengers_abrufen\"><\/span>1.) Mac Adresse des Empf\u00e4ngers abrufen<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Um die MAC-Adresse unseres Empf\u00e4ngers abzurufen laden wir das File <strong>1st_Print_MacAdress.ino<\/strong> auf unseren Empf\u00e4nger hoch und schauen im Serial Monitor der Arduino IDE welche MAC- Adresse ausgegeben wird.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-5574\" src=\"https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/MAC-Adresse-1000x678.png\" alt=\"\" width=\"1000\" height=\"678\" srcset=\"https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/MAC-Adresse-1000x678.png 1000w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/MAC-Adresse-768x521.png 768w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/MAC-Adresse-1536x1041.png 1536w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/MAC-Adresse-2048x1389.png 2048w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/MAC-Adresse-848x575.png 848w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/MAC-Adresse-1140x773.png 1140w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/MAC-Adresse-1170x793.png 1170w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/MAC-Adresse-1920x1302.png 1920w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/MAC-Adresse-600x407.png 600w\" sizes=\"auto, (max-width: 1000px) 100vw, 1000px\" \/><\/p>\n<h4><span class=\"ez-toc-section\" id=\"2_Mac_Adresse_einfuegen_und_Datenuebertragung_testen\"><\/span>2.) Mac Adresse einf\u00fcgen und Daten\u00fcbertragung testen<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Nachdem du nun die MAC Adresse notiert hast k\u00f6nnen wir mit dem Programmieren des Empf\u00e4ngers fortfahren. Auf der Zeile 43 des Files 2nd_ESPNOW_Transmitter_ForceSensor.ino musst du nun die MAC Adresse des Empf\u00e4ngers eintragen:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-5575\" src=\"https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/MAC-Adresse-SenderCode-1000x675.png\" alt=\"\" width=\"1000\" height=\"675\" srcset=\"https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/MAC-Adresse-SenderCode-1000x675.png 1000w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/MAC-Adresse-SenderCode-768x519.png 768w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/MAC-Adresse-SenderCode-1536x1037.png 1536w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/MAC-Adresse-SenderCode-2048x1383.png 2048w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/MAC-Adresse-SenderCode-848x573.png 848w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/MAC-Adresse-SenderCode-1140x770.png 1140w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/MAC-Adresse-SenderCode-1170x790.png 1170w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/MAC-Adresse-SenderCode-1920x1297.png 1920w, https:\/\/sites.hslu.ch\/werkstatt\/wp-content\/uploads\/sites\/13\/2023\/06\/MAC-Adresse-SenderCode-600x405.png 600w\" sizes=\"auto, (max-width: 1000px) 100vw, 1000px\" \/><\/p>\n<p>Sobald du den Sender wie Empf\u00e4nger mit den 2nd Files bespielt hast, sollten deine Sensorwerte im Serial Port des Empf\u00e4ngers lesbar sein und bei gen\u00fcgend Druck auf den Drucksensor den Servo in Bewegung versetzen.<\/p>\n<h4><span class=\"ez-toc-section\" id=\"3_Applikationen_mit_zusaetzlichen_Sensoren_und_Servos_erweitern\"><\/span>3.) Applikationen mit zus\u00e4tzlichen Sensoren und Servos erweitern<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Funktioniert die \u00dcbertragung, so kannst du sowohl die Sender wie Empf\u00e4nger Sketches erweitern. In unserem Beispiel habe ich die Sender Seite mit 3 Drucksensoren und einem Gyrosensor erweitert.<\/p>\n<p>Auf der Empf\u00e4nger Seite habe ich 3 Servos angebracht. Die Werte der Druck und Gyrosensoren werden ausgewertet und der gr\u00f6sste Wert wird bestimmt um ein spezifisches Bewegungsmuster bei den Servos auszul\u00f6sen.[\/vc_column_text][\/vc_column][vc_column width=&#187;1\/3&#8243; el_class=&#187;dkw-col-micro&#187; offset=&#187;vc_col-lg-3&#8243;][\/vc_column][\/vc_row][\/vc_section][vc_section el_class=&#187;dkw-dontprint&#187;][vc_row disable_element=&#187;yes&#187;][vc_column][vc_column_text]\u2014 \u2014 \u2014 INFO: In beiden nachfolgenden Post Grids die passenden Recipies und die passenden Talks\u00a0 ausw\u00e4hlen \u2014 \u2014 \u2014<br \/>\n[\/vc_column_text][\/vc_column][\/vc_row][vc_row][vc_column][vc_column_text]<\/p>\n<h2>Passende Tools<\/h2>\n<p>[\/vc_column_text][vc_basic_grid post_type=&#187;ids&#187; element_width=&#187;2&#8243; gap=&#187;10&#8243; item=&#187;517&#8243; grid_id=&#187;vc_gid:1687856277113-66ccbee6-c1d8-10&#8243; include=&#187;5175, 4098, 5467, 5329&#8243;][\/vc_column][\/vc_row][\/vc_section]<\/p>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>[vc_section el_class=&#187;dkw-section-lead&#187;][vc_row][vc_column width=&#187;2\/3&#8243; offset=&#187;vc_col-sm-offset-2&#8243;][vc_column_text]In diesem Recipie schauen wir uns an wie wir die ESP Microcontroller nutzen k\u00f6nnen um Daten per WiFi versenden und empfangen [&hellip;]<\/p>\n","protected":false},"author":50,"featured_media":5531,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[15,11],"tags":[],"class_list":["post-5529","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-mediadock","category-recipies"],"acf":[],"_links":{"self":[{"href":"https:\/\/sites.hslu.ch\/werkstatt\/wp-json\/wp\/v2\/posts\/5529","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sites.hslu.ch\/werkstatt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/sites.hslu.ch\/werkstatt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/sites.hslu.ch\/werkstatt\/wp-json\/wp\/v2\/users\/50"}],"replies":[{"embeddable":true,"href":"https:\/\/sites.hslu.ch\/werkstatt\/wp-json\/wp\/v2\/comments?post=5529"}],"version-history":[{"count":22,"href":"https:\/\/sites.hslu.ch\/werkstatt\/wp-json\/wp\/v2\/posts\/5529\/revisions"}],"predecessor-version":[{"id":5687,"href":"https:\/\/sites.hslu.ch\/werkstatt\/wp-json\/wp\/v2\/posts\/5529\/revisions\/5687"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/sites.hslu.ch\/werkstatt\/wp-json\/wp\/v2\/media\/5531"}],"wp:attachment":[{"href":"https:\/\/sites.hslu.ch\/werkstatt\/wp-json\/wp\/v2\/media?parent=5529"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/sites.hslu.ch\/werkstatt\/wp-json\/wp\/v2\/categories?post=5529"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/sites.hslu.ch\/werkstatt\/wp-json\/wp\/v2\/tags?post=5529"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}