ESP-8266 Programm für den Wetterbimmler
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.
Thorsten Riess ffee71a317 corr download interval il y a 2 ans
README.md corr md syntax il y a 2 ans
wetterbimmler.ino corr download interval il y a 2 ans

README.md

Wetterbimmler

ESP-8266 Programm für den Wetterbimmler, siehe Wetterbimmler.

Vorbereitung

Die Software ist für die Arduino-IDE und ein ESP-8266-Board, getestet wurde sie mit den Boards NodeMCU und WeMos D1, andere Board funktionieren vermutlich ähnlich.

Zunächst benötigt man also die Arduino-IDE von der Arduino Homepage (dort unter “Download” / “Download IDE”).

Danach muss man noch die ESP-8266 Unterstützung integrieren, das geht über “Datei” - “Voreinstellungen” und die zusätzliche Boardverwalter-URL http://arduino.esp8266.com/stable/package_esp8266com_index.json eintragen. Dann unter “Werkzeuge” - “Board” - “Boardverwalter…” die “esp8266”-Boardtypen installieren und unter “Werkzeuge” - “Board” das richtige Board auswählen (z.B. NodeMCU oder WeMos D1). Schließlich müssen noch zusätzliche Bibliotheken installiert werden, dazu unter “Sketch” - “Bibliothek einbinden” - “Bibliotheken verwalten…” die folgenden Bibliotheken herunterladen: ArduinoJson, FastLED und WifiManager.

Nun ist die Arduino IDE bereit, nun noch den Quellcode aus diesem Git-Repository clonen (via git clone https://git.hacknology.de/tecer/wetterbimmler.git) und wetterbimmler.ino in der IDE öffnen. Vor dem Kompilieren sollten noch einige Dinge angepasst werden:

Defines

Folgende Konstanten sind vorgesehen:

  • NUM_LEDS: die Anzahl der verwendeten LEDs. Funktioniert im Moment mit 14 oder 16 (jeweils 2 LEDs pro Warngruppe, Warngruppe 8 wird bei 14 LEDs weggelassen)
  • DEBUG: Debug-Ausgabe über USB
  • DEMO_PAUSE: Wie lange eine Warnung im Demo-Modus gehalten wird (in 2-Sekunden-Schritten)
  • BIMMEL_POWER: Motorgeschwindigkeit des Bimmel-Motors (0-1024, wobei bei 1024 mehr oder weniger 3V am für 1,5V ausgelegten Motor anliegen, sollte also besser <=512 bleiben)
  • WS2812PIN: GPIO-Pin für den LED-Streifen
  • MOTORPIN: GPIO-Pin für Motor-Enable des Motortreibers
  • PHASEPIN: GPIO-Pin für Motor-Phase des Motortreibers (MOTORPIN und PHASEPIN sind optional, der Wetterbimmler kann auch komplett ohne Bimmel betrieben werden)
  • SLEEPPIN: GPIO-Pin für Sleep des Motortreibers
  • DEMOSWITCH: GPIO-Pin für den Demo-Taster (nutzt internen Pull-up und der Taster zieht den Pin auf Masse - optional)
  • AMBIENTPIN: GPIO-Pin für einen weiteren LED-Streifen, der als Ambient Light genutzt werden kann (optional)
  • NUM_AMBIENT_LEDS: Anzahl der LEDs des zusätzlichen LED-Streifens

Hier ist zu beachten, dass jeweils die reinen GPIO-Pin-Nummern gemeint sind, die haben i.a. nichts mit den Beschriftungen (D0, D1 usw.) zu tun! Die Zuordnung der GPIOs zu den entsprechend beschrifteten Pins erhält man am einfachsten per Google-Suche nach “BOARDNAME pinout”. Im Quelltext sind einige Zuordnungen in den Kommentaren vermerkt.