OpenFire, Software

 

Hier noch ein kurzes Kapitel zur Software.

Ich habe die Software der Übersicht halber in einige Dateien aufgeteilt. Das "Hauptprogramm" ist "OpenFire.ino". Wer statt mit der Arduino IDE lieber mit MS Studio Code/Platform IO arbeitet, benennt das File einfach in OpenFire.cpp um. Das ist auch schon die einzige Anpassung.

Das Hauptprogramm enthält neben der Intitialisierung die Choreografie/den Abbrennplan des Feuerwerks.  Die Anpassung des Programms an die verwendeten LEDs und auch die Anzahl der LED und die Anzahl der Streifen werden in "config.h" eingestellt. Alle Effekte sind in den jeweiligen cpp/h-Files:

  • crackling: Cracklingeffekte
  • comets: Kometen
  • shperes: Sphären (Coconut-Tree, Weide...)
  • raise: der Aufstiegseffekt

Das Programm benötigt für das Comilieren ein paar Libraries: "FastLED" und "DFPlayerMini_Fast".

 

 

Nun noch ein paar erläuterungen zum config.h: 

Config.h

#define SOUND_ON Hier kann eingestellt werden, ob eine akustische Untermalung gewünscht ist

#define OpenFire3  Hier wird definiert, ob man OpenFire1 oder OpenFire2 gebaut hat (dann auskommentieren), oder ob man OpenFire3 gebaut hat, dann so stehen lassen

...
#define LEDTyp 2811 //or 2812 Hier wird eingestellt, welche LED Verwendung findet. Wir der Effekt falsch/nicht dargestellt (z.B. Farbe) dass kann das daran liegen, das hier die falsche LED eingestellt wurde.

...

#define NUM_LEDS_Strip 15 Hier muss angegeben werden, wie viele LEDs in einem Streifen enthalten sind (Haupteffekt).
#define NUM_LEDS_Strip_Shoot 15 Hier steht, wie viele LED der Aufstiegseffekt hat.
#define NUM_Strips 20 Hier wird definiert, wie viele Streifen/Strips den Haupteffekt bilden.

Folgende Zeilen betreffen OpenFire1 und OpenFire2:

#define LED_PIN 3 Hier wird angegeben, wo die LEDs am Mikroprozessor angeschlossen sind (Haupteffekt)

Bei OpenFire3 muss im Hauptprogramm (OpenFire.ino bzw. main.cpp) die Pindefinition erfolgen, sorry. Da genügen meine C-Kenntnisse nicht. Das Problem ist, dass FastLED für die Pin-Definition eine Konstante verlangt. Irgendwie ginge das wohl mit einem Trick und mit dem Kapseln in einem Template.


#define LED_PIN_Shoot 4 Hier wird angegeben, wo die LEDs am Mikroprozessor angeschlossen sind (Aufstiegseffekt)

  

 

Hier ist die Software herunterladbar:

(OpenFire211118.zip)

Hier sind die MP3-Dateien für die Tonausgabe herunterladbar:

(MP3Files.zip)

 Wer gerne in der Arduino-IDE arbeitet, kopiert den Code einfach in das Sketchbook-Verzeichnis, Unterordner "OpenFire". 

Wer lieber mit der Platform-IO-Oberfläche arbeitet, benennt das OpenFire.ino nach dem Speichern in main.cpp um. 

Die Software benötigt noch zwei Libraries, die über die Entwicklungsoberflächen (Arduino IDE/Platform IO) eingebunden werden müssen:

  • FastLED
  • DFPlayerMini_Fast

 

NEWS:

18.11.2021: Neue Softwareversion. Es wurde ein Schreibfehler bereinigt und ein Fehler im Aufstiegseffekt behoben (bei 8-Bit-Prozessoren wie Arduino MEGA 2560 ging der Aufstiegseffekt nicht).

19.12.2021: Mit folgenden Prozessoren habe ich OpenFire bereits erfolgreicht getestet:

  • ArduinoDue,
  • Arduino Mega 2560 (geht gerade so),
  • Teensy LC,
  • Teensy 4.1

definitiv NICHT funktioniert Teensy 4.0 mit OpenFire3 (Limitierung durch Pin-Schema, siehe Teensy 4.0 Probleme  mit FastLED->Google).

 

No comments