Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
esp [2022/07/23 21:03] – [DeAuther] gerald | esp [2024/12/04 21:30] (aktuell) – [Development /Programmierung] gerald | ||
---|---|---|---|
Zeile 23: | Zeile 23: | ||
==== Linux ==== | ==== Linux ==== | ||
- | === Esptools === | + | === Esptools |
< | < | ||
Zeile 35: | Zeile 35: | ||
< | < | ||
+ | === ESPtool === | ||
- | ===== Development ===== | + | |
+ | |||
+ | Ist bei Ubuntu schon dabei. | ||
+ | |||
+ | Checken, was für Flash-Speicher verbaut ist (Größe) (ist ja extern beim ESP) | ||
+ | < | ||
+ | | ||
+ | </ | ||
+ | |||
+ | == flashen == | ||
+ | |||
+ | |||
+ | If you have an ESP-01 or other device without built-in USB, you will need to enable flashing yourself by pulling GPIO0 low or pressing a " | ||
+ | |||
+ | < | ||
+ | sudo esptool --port / | ||
+ | </ | ||
+ | |||
+ | == CH340 Serial USB-driver == | ||
+ | |||
+ | Manche ESP haben einen USB-Chip eingebaut (z.B. Dmos D1 mini), der den CH340 driver benötigt. Der eingebaute von Ubuntu ist Scheisse (auch 2022 noch). Daher gibt es einen gepatchten driver: | ||
+ | |||
+ | |||
+ | [[https:// | ||
+ | |||
+ | Quelle((https:// | ||
+ | |||
+ | * cd into the directory where the files are saved | ||
+ | * make clean | ||
+ | * make | ||
+ | * sudo make load | ||
+ | * sudo rmmod ch341 to uninstall the broken driver | ||
+ | * lsmod | grep ch34 to list what modules are currently installed | ||
+ | * Plug and unplug your CH340 device again on the USB port | ||
+ | * dmesg | ||
+ | |||
+ | Expected output (should show " | ||
+ | < | ||
+ | [ xxx] ch34x ttyUSB0: ch34x converter now disconnected from ttyUSB0 | ||
+ | [ xxx] ch34x 3-2:1.0: device disconnected | ||
+ | </ | ||
+ | Depending on your root permissions, | ||
+ | |||
+ | < | ||
+ | sudo usermod -a -G dialout $username | ||
+ | sudo chmod a+rw / | ||
+ | </ | ||
+ | |||
+ | Siehe auch Arduino IDE auf Quellenseite! | ||
+ | |||
+ | |||
+ | |||
+ | ===== Development | ||
+ | |||
+ | DerESP8266 hat 2 UART eingebaut UART0 ist der ganz normale Serielle Anschluss über TX (GPIO1) | ||
+ | & RX (GPIO3) | ||
+ | |||
+ | |||
+ | Der ESP8266 verfügt über zwei UART-Schnittstellen: | ||
+ | |||
+ | **UART0 (Haupt-UART)** | ||
+ | |||
+ | Standard-Pins: | ||
+ | * TX: GPIO1 | ||
+ | * RX: GPIO3 | ||
+ | Eigenschaften: | ||
+ | |||
+ | Volle Duplex-Kommunikation (kann senden und empfangen). | ||
+ | Wird standardmäßig für die serielle Kommunikation und Debugging genutzt. | ||
+ | |||
+ | Kann über Software auf andere GPIOs gemappt werden (via Serial.swap()): | ||
+ | |||
+ | * TX: GPIO15 | ||
+ | * RX: GPIO13 | ||
+ | |||
+ | **UART1** | ||
+ | |||
+ | Standard-Pin: | ||
+ | |||
+ | * TX: GPIO2 | ||
+ | Einschränkungen: | ||
+ | |||
+ | * Nur TX ist verfügbar; RX ist nicht nutzbar. | ||
+ | * Typischerweise für Debug-Ausgaben genutzt. | ||
+ | * Kann nicht für vollständige UART-Kommunikation verwendet werden (kein Empfang). | ||
==== Arduino IDE ==== | ==== Arduino IDE ==== | ||
Zeile 143: | Zeile 228: | ||
=== LC Technology 4CH Relay === | === LC Technology 4CH Relay === | ||
+ | |||
+ | TASMOTA | ||
Zeile 152: | Zeile 239: | ||
{" | {" | ||
</ | </ | ||
+ | |||
+ | Tasmota 12.0.2 von Theo Arends | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | < | ||
+ | {" | ||
+ | </ | ||
+ | |||
+ | {{:: | ||
+ | |||
+ | 2023: bekomm' | ||
+ | |||
+ | Spezifikationen: | ||
+ | |||
+ | Boardgröße: | ||
+ | |||
+ | Schnittstelle an Bord: | ||
+ | * IN +, IN-: 5V Spannungseingang; | ||
+ | * 5V, GND, TX, RX: serielle UART-Port-PIN; | ||
+ | * SWIM, PIN8, NRST: reservierter MCU-Download-Port. | ||
+ | |||
+ | * Taste S1: Änderungsmodus, | ||
+ | * Taste S2: Zurücksetzen | ||
+ | |||
+ | * LED D1 / D2 / D3 / D4 (rot): Relais arbeitet LED, LED leuchtet bei eingeschaltetem Relais | ||
+ | * LED D7 (rot): Anzeige für Modus 1 | ||
+ | * LED D5 (blau): Anzeige für Modus 2 | ||
+ | * LED D6 (grün): Werkstattindikator, | ||
+ | |||
+ | - Wenn er gelöscht wird, wird er vom Router konfiguriert oder getrennt. | ||
+ | - 0.5s schnelles Blinken stellt dar, dass Handy-APP WIFI-Konto und Kennwort für ESP-01-Modul konfiguriert | ||
+ | - 2S blinkt langsam, um die Konfiguration zu beenden, und warten auf die Verbindung mit dem Mobiltelefon über TCP | ||
+ | - LED leuchtet immer auf TCP-Verbindungen mit Mobiltelefon erfolgreich | ||
+ | |||
+ | Anschluss für reservierten Zwei-Kappen-Jumper: | ||
+ | * Im Allgemeinen, | ||
+ | |||
+ | * COM1 COM2 COM3 COM4: Gemeinsames Terminal; | ||
+ | * NC1 NC2 NC3 NC4: normal geschlossen | ||
+ | * NO1 NO2 NO3 NO4: normal geöffnet | ||
+ | |||
+ | Steuerbefehl für Relais (Hex-Format): | ||
+ | * Relais 1 öffnen: A0 01 01 A2 | ||
+ | * Relais 1 schließen: A0 01 00 A1 | ||
+ | * Relais 2 öffnen: A0 02 01 A3 | ||
+ | * Relais 2 schließen: A0 02 00 A2 | ||
+ | * Relais 3 öffnen: A0 03 01 A4 | ||
+ | * Relais 3 schließen: A0 03 00 A3 | ||
+ | * Relais 4 öffnen: A0 04 01 A5 | ||
+ | * Relais 4 schließen: A0 04 00 A4 | ||
+ | |||
+ | Anleitung sieht auch gut aus: [[https:// | ||
+ | |||
+ | === 2er Relais Board (Garage) === | ||
+ | |||
+ | 2 Relais | ||
+ | |||
+ | ESP-12F 5V/8-80V 2 Channel Relay Board (ESP12F_Relay_X2) {{ :: | ||
+ | |||
+ | {{ :: | ||
+ | |||
+ | 5x8cm | ||
+ | |||
+ | zusätzliche Kontakte (gegen GRN, Pull-Up 10k Ohm) ((https:// | ||
+ | |||
+ | Stecker: | ||
+ | * GPIO 12 | ||
+ | * GPIO 13 | ||
+ | * GPIO 02 | ||
+ | * Schwarz = GND | ||
+ | |||
+ | |||
+ | * Switch1 (Garagentor offen): GPIO 02 | ||
+ | * Switch2 (Garagentür): | ||
+ | * Switch3 (Garagentür geschlossen): | ||
+ | |||
+ | |||
+ | Ein Relais nur kurz schalten: [[https:// | ||
+ | |||
+ | SetOption26 (Anzeige der Relais-Indizes) aktivieren: | ||
+ | |||
+ | < | ||
+ | |||
+ | Weitere Beispiele für den Bereich 0,1 bis 11,1: | ||
+ | |||
+ | Haltezeit von 3,7 Sekunden: | ||
+ | < | ||
+ | |||
+ | Haltezeit von 4,2 Sekunden: | ||
+ | < | ||
+ | |||
+ | PulseTime deaktiveren: | ||
+ | < | ||
+ | |||
+ | |||
+ | {{:: | ||
+ | |||
+ | |||
+ | |||
====== ESP32 ====== | ====== ESP32 ====== | ||