Handhabung & Technik El Fueradoro - Funkzündanlage mit Interface

Dieses Thema im Forum "Effekte, Feuerwerkskörper, Technik, Hilfsmittel" wurde erstellt von jordanatic, 15. Januar 2015.

  1. Ich hatte tatsächlich eine RP-SMA Male Antenna auf einem SMA Female Kabel. Die TX LED hat bisher nicht aufgeleuchtet und tut es dummerweise auch mit der richtigen Antenne nicht.
    Meinste der RFM hat ne Macke? Aber eigentlich hab ich schon 2 verschiedene probiert, also wahrscheinlich hab ich irgendwo was verbockt :confused:.
     
  2. Wenn die Meldung "Verbindung zum RFM69 erfolgreich!" erscheint, heißt das, dass die SPI-Kommunikation grundsätzlich funktioniert. Dabei wird das Versionsregister ausgelesen, und überprüft, dass die Antwort mit dem zu erwartenden Wert übereinstimmt.

    Anschließend wird das Funkmodul konfiguriert (Frequenz, Leistung, Modulation, ...) und zum Schluss werden im Abstand von je 0,2 Sekunden fünf kurze Bursts geschickt, um die Zündboxen auf die Frequenz zu synchronisieren, wobei während jeden Sendevorgang die Tx-LED aufblitzt. Wenn die LED gar nicht erst angeht, scheint es vorher ein Problem mit dem Funkmodul zu geben. Vermutlich hängt es bei dir in der Schleife, in der auf den Abschluss der Kalibration des RC-Oszillators gewartet wird, da muss ich noch einen Timeout einbauen.
     
  3. Ok, danke für die Info. Sag mir Bescheid, wenn ich irgendwas testen oder irgendwelche Infos/Logs posten soll.
     
  4. Wenn du die Möglichkeit hast, mit deinem Pi ins Internet zu kommen, kannst du mal im raspEasyFire3-Unterverzeichnis "script" die Datei "ref_upgrade.sh" ausführen. Also auf der Kommandozeile
    Code:
    pi@raspEasyFire ~/raspEasyFire3/script $ ./ref_upgrade.sh
    laufen lassen.

    Damit bekommst du eine neue RFM69.py, die an der von mir vermuteten Stelle nach einer Sekunde Timeout die entsprechende Schleife verlässt.

    Falls du keinen Internetzugang mit dem Pi hast, kann ich dir die Datei auch anderweitig zukommen lassen.
     
    frazzle gefällt das.
  5. Habe mir nun die aktualisierte Datei per Skript geholt (da wurden übrigens noch weitere Dateien aktualisiert). Beim Start komme ich nun weiter, aber ganz durch läuft es noch nicht. In der Ausgabe erscheint nun nach "Verbindung zum RFM69 erfolgreich" folgendes zusätzlich:

    Code:
    Konfiguriere RFM69
    Konfiguration abgeschlossen
    RC-Kalibrierung erfolgreich
    Die TX-LED leuchtet dabei dauerhaft.
     
  6. In der gestrigen Version hatte ich einen Fehler (Ungleichheitszeichen falsch gesetzt), daher wurde die RC-Kalibrierung immer als erfolgreich gemeldet. Habe gerade eine neue Version gepusht, die man wieder über das Skript holen kann und die genauere Infos darüber geben dürfte, wo erstmals ein Fehler auftritt.

    Ich kann mich aus den Erfahrungen der ersten Bring-Up-Phase erinnern, dass das Funkmodul ziemlich wählerisch war, was die Stromversorgung der Platine angeht. newan hatte damals eine Lösung mit Netzteil und nachgeschaltetem Step-Down, die zu unerwünschtem Verhalten des Moduls geführt hat. Mit irgendeinem Billig-Netzteil konnte ich das damals reproduzieren, bin mit USB-Power-Banks aber immer gut gefahren.

    Bei mir sieht der Startup jetzt so aus:
    pi@raspEasyFire ~/raspEasyFire3 $ sudo python main.py
    [INFO ] [Logger ] Record log in /root/.kivy/logs/kivy_19-05-06_10.txt
    [INFO ] [Kivy ] v1.11.0.dev0, git-372b819, 20181210
    [INFO ] [Python ] v2.7.13 (default, Sep 26 2018, 18:42:22)
    [GCC 6.3.0 20170516]
    [INFO ] [Factory ] 184 symbols loaded
    [INFO ] [Image ] Providers: img_tex, img_dds, img_sdl2, img_pil, img_gif (img_ffpyplayer ignored)
    [INFO ] [Text ] Provider: sdl2
    [INFO ] [Window ] Provider: egl_rpi
    [INFO ] [GL ] Using the "OpenGL ES 2" graphics system
    [INFO ] [GL ] Backend used <gl>
    [INFO ] [GL ] OpenGL version <OpenGL ES 2.0>
    [INFO ] [GL ] OpenGL vendor <Broadcom>
    [INFO ] [GL ] OpenGL renderer <VideoCore IV HW>
    [INFO ] [GL ] OpenGL parsed version: 2, 0
    [INFO ] [GL ] Shading version <OpenGL ES GLSL ES 1.00>
    [INFO ] [GL ] Texture max size <2048>
    [INFO ] [GL ] Texture max units <8>
    [INFO ] [Window ] virtual keyboard not allowed, single mode, not docked
    pygame 1.9.6
    Hello from the pygame community. Contribute - pygame wiki
    Starting raspEasyFire!
    Starte RFM69-Initialisierungsprozess
    Reading user-defined AES-Key!
    Verbindung zum RFM69 erfolgreich
    Konfiguriere RFM69
    Konfiguration abgeschlossen
    RC-Kalibrierung erfolgreich
    Sende Sync Packages
    Sync Packages erfolgreich gesendet
    RFM69-Initialisierungsprozess beendet
    RFM loaded
    ADC loaded
    Logikklasse erstellt
    Screen Manager erstellt
    Start-Screen erstellt!
    ID-Wechsel-Screen erstellt!
    Autoshow-Screen erstellt!
    Manuellshow-Screen erstellt!
    Musikeinstellungen ausgewertet
    Showcheck läuft!
    Zpl geladen: Kanaltest-zwei-Slaves
    Musik-File geladen: Kanaltest-zwei-Slaves
    Test-Musik-File geladen: test
    Erzeuge Bildschirmoutput für (semi-)automatischen Modus
    Showcheck läuft!
    Current ZPL: Kanaltest-zwei-Slaves
    Current MP3: test
    Erzeuge Bildschirmoutput für (semi-)automatischen Modus
    Unable to connect to X server
    [INFO ] [ProbeSysfs ] device match: /dev/input/event3
    [INFO ] [MTD ] Read event from </dev/input/event3>
    [INFO ] [ProbeSysfs ] device match: /dev/input/event1
    [INFO ] [MTD ] Read event from </dev/input/event1>
    [INFO ] [ProbeSysfs ] device match: /dev/input/event2
    [INFO ] [MTD ] Read event from </dev/input/event2>
    [INFO ] [ProbeSysfs ] device match: /dev/input/event0
    [INFO ] [MTD ] Read event from </dev/input/event0>
    [INFO ] [ProbeSysfs ] device match: /dev/input/event3
    [INFO ] [HIDInput ] Read event from </dev/input/event3>
    [INFO ] [ProbeSysfs ] device match: /dev/input/event1
    [INFO ] [HIDInput ] Read event from </dev/input/event1>
    [INFO ] [ProbeSysfs ] device match: /dev/input/event2
    [INFO ] [HIDInput ] Read event from </dev/input/event2>
    [INFO ] [ProbeSysfs ] device match: /dev/input/event0
    [INFO ] [HIDInput ] Read event from </dev/input/event0>
    [INFO ] [Base ] Start application main loop
    [INFO ] [MTD ] </dev/input/event3> range position X is 0 - 0
    [INFO ] [MTD ] </dev/input/event3> range position Y is 0 - 0
    [INFO ] [MTD ] </dev/input/event1> range position X is 0 - 1024
    [INFO ] [MTD ] </dev/input/event3> range touch major is 0 - 0
    [INFO ] [MTD ] </dev/input/event2> range position X is 0 - 0
    [INFO ] [MTD ] </dev/input/event1> range position Y is 0 - 600
    [INFO ] [HIDMotionEvent] using <SIGMACHIP USB Keyboard>
    [INFO ] [MTD ] </dev/input/event0> range position X is 0 - 0
    [INFO ] [MTD ] </dev/input/event3> range touch minor is 0 - 0
    [INFO ] [MTD ] </dev/input/event2> range position Y is 0 - 0
    [INFO ] [MTD ] </dev/input/event1> range touch major is 0 - 0
    [INFO ] [HIDMotionEvent] using <WaveShare WaveShare Touchscreen>
    [INFO ] [MTD ] </dev/input/event0> range position Y is 0 - 0
    [INFO ] [HIDMotionEvent] using <SIGMACHIP USB Keyboard>
    [INFO ] [HIDMotionEvent] using <C-Media Electronics Inc. USB PnP Sound Device>
    [INFO ] [MTD ] </dev/input/event3> range pressure is 0 - 255
    [INFO ] [GL ] NPOT texture support is available
    [INFO ] [MTD ] </dev/input/event2> range touch major is 0 - 0
    [INFO ] [MTD ] </dev/input/event1> range touch minor is 0 - 0
    [INFO ] [HIDMotionEvent] <WaveShare WaveShare Touchscreen> range ABS X position is 0 - 1024
    [INFO ] [MTD ] </dev/input/event0> range touch major is 0 - 0
    [INFO ] [MTD ] </dev/input/event3> axes invertion: X is 0, Y is 0
    [INFO ] [MTD ] </dev/input/event2> range touch minor is 0 - 0
    [INFO ] [MTD ] </dev/input/event1> range pressure is 0 - 255
    [INFO ] [HIDMotionEvent] <WaveShare WaveShare Touchscreen> range ABS Y position is 0 - 600
    [INFO ] [MTD ] </dev/input/event0> range touch minor is 0 - 0
    [INFO ] [MTD ] </dev/input/event3> rotation set to 0
    [INFO ] [MTD ] </dev/input/event2> range pressure is 0 - 255
    [INFO ] [MTD ] </dev/input/event1> axes invertion: X is 0, Y is 0
    [INFO ] [HIDMotionEvent] <WaveShare WaveShare Touchscreen> range ABS pressure is 0 - 255
    [INFO ] [MTD ] </dev/input/event0> range pressure is 0 - 255
    [INFO ] [MTD ] </dev/input/event2> axes invertion: X is 0, Y is 0
    [INFO ] [MTD ] </dev/input/event1> rotation set to 0
    [INFO ] [HIDMotionEvent] <WaveShare WaveShare Touchscreen> range position X is 0 - 1024
    [INFO ] [MTD ] </dev/input/event2> rotation set to 0
    [INFO ] [MTD ] </dev/input/event0> axes invertion: X is 0, Y is 0
    [INFO ] [HIDMotionEvent] <WaveShare WaveShare Touchscreen> range position Y is 0 - 600
    [INFO ] [MTD ] </dev/input/event0> rotation set to 0
    [INFO ] [HIDMotionEvent] <WaveShare WaveShare Touchscreen> range pressure is 0 - 255
     
  7. Nun steigt das Programm mit folgender Exception nach "Konfiguration abgeschlossen" ganz aus:

    Verbindung zum RFM69 erfolgreich
    Konfiguriere RFM69
    Konfiguration abgeschlossen
    Traceback (most recent call last):
    File "main.py", line 563, in <module>
    MainApp().run()
    File "/usr/local/lib/python2.7/dist-packages/kivy/app.py", line 800, in run
    root = self.build()
    File "main.py", line 79, in build
    self.objRaspEasyFireRFM69 = RaspEasyFireRFM69(self)
    File "/home/pi/raspEasyFire3/module/RaspEasyFireRFM69.py", line 29, in __init__
    self.objRFM69 = RFM69(18, 0, self.objRFM69Config)
    File "/home/pi/raspEasyFire3/module/lib/RFM69.py", line 71, in __init__
    if wait_for(lambda: self.spi_read(Register.OSC1) & 0x40, "RC-Calibration timeout"):
    File "/home/pi/raspEasyFire3/module/lib/RFM69.py", line 41, in wait_for
    raise RadioError("Condition didn't become true within %s seconds" % timeout)
    module.lib.RFM69.RadioError: Condition didn't become true within 1 seconds
    Exception AttributeError: "RaspEasyFireRFM69 instance has no attribute 'objRFM69'" in <bound method RaspEasyFireRFM69.__del__ of <module.RaspEasyFireRFM69.RaspEasyFireRFM69 instance at 0x712aa260>> ignored

    Netzteile habe ich ein Nokia 5V 3A Teil von meinem Handy benutzt. Alternativ hab ich grad eben noch ein anderes 5V 2A Steckernetzteil und ne Powerbank getestet. Alle endeten allerdings mit obiger Fehlermeldung.
     
  8. Es ist ziemlich eindeutig, dass dein Funkmodul nicht richtig funktioniert. Das kann entweder am Modul selbst liegen oder auf der Platine ist irgendetwas nicht in Ordnung. Kannst du die Module mal in einer Zündbox testen bzw. die Zündboxmodule auf der RasPi-Platine? Bei Zündboxen leuchten zunächst beim Hochfahren die orange und gelbe LED abwechselnd, um die Slave-ID darzustellen, anschließend signalisiert die grüne LED durch kurzes Aufblitzen, dass die Box ihre Parameter in den Äther schickt. Wenn es nicht bei dem Aufblitzen bleibt, sondern die LED dauerhaft leuchtet, funktioniert das Funkmodul nicht richtig.
     
  9. Den leisen Verdacht hatte ich irgendwie schon von Anfang an. Ich versuche die beiden Funkmodule mal noch unabhängig von der Zündanlage auf Funktion zu testen. Hast du noch eine "seriöse" Quelle für den RFM69CW? Bei Pollin ist der nicht mehr lieferbar und ich hatte damals meine von Aliexpress. Nur für den Fall, das meine Module unbrauchbar sein sollten.

    Ich habe beide Funkmodule auf der Zündbox getestet. Beim Einschalten leuchtet zuerst die orange LED einmal auf und dann einmal die grüne. Als Unique-ID und Slave-ID hatte ich bei der Zündbox jeweils "01" eingestellt. Wenn ich es richtig verstanden habe, dann wird ja durch die LEDs nur die Slave-ID, nicht aber die Unique-ID signalisiert? Dann müsste es ja passen.
     
  10. #235 komp, 7. Mai 2019
    Zuletzt bearbeitet: 7. Mai 2019
    Falls sich wirklich das Funkmodul als defekt herausstellt, könnte ich dir zur Not noch mit einem fertigen Teil inklusive Adapterplatine, Stiftleisten und SMA-Stecker aushelfen. Bisher waren meine alle funktionsfähig. Würde dir das sogar vorher in meiner Anlage testen, um ganz sicher zu gehen.

    Hab einen Satz übrig weil ich eine Zündbox-Platine vermurkst hatte ;)

    Schreib mir einfach ne PN.

    Edit: mir fällt da gerade noch was ein: die Funkmodule gibt es für verschiedene Frequenzen. Nicht, dass es daran scheitert. Auf meinen ist auf der Rückseite eine Tabelle in den Silkscreen gearbeitet, dort ist dann das entsprechende angekreuzt. Ist aber wohl jetzt zu spät, da nochmal nachzusehen. Vielleicht findest du in der Artikelbeschreibung aber noch ne Info.
     
    frazzle gefällt das.
  11. Danke für das Angebot :). Werde ggf. darauf zurückkommen.

    Ich hatte eigentlich die mit 868 MHz bestellt, so steht's in der Bestellung und ich meine die sind auch entsprechend auf der Rückseite markiert gewesen. Muss ich später nochmal überprüfen, hab noch 2 unbenutzte rumliegen.
     
  12. Ich habe meine letzten Exemplare auch immer von AliExpress bezogen und keine Probleme damit gehabt. Nach deiner Schilderung zum Verhalten auf der Zündbox (s. u.) glaube ich auch nicht, dass das Modul an sich einen Defekt hat, sondern das Problem irgendwo im Bereich des Raspberry Pi, seiner Stromversorgung, der Aufsteckplatine, ... liegt. Die SPI-Kommunikation scheint ja zu funktionieren, allerdings gibt es womöglich im Analogteil irgendwo Störeinflüsse.

    Ja, die orange (und gelbe, falls die Slave-ID > 1 ist) LED signalisieren die Slave-ID, nicht die Unique-ID. Wie lange hat das Leuchten der grünen LED etwa gedauert? Deutlich unter einer Sekunde (alles ok beim Senden) oder wesentlich länger (Timeout)? Wenn du mehrere Zündboxen hast, kannst du auch testen, ob eine Zündbox das von der anderen gesendete Signale empfängt, dann leuchtet die orange LED beim Empfänger.
     
    frazzle gefällt das.
  13. Ich hab's nun gelöst, bzw. meinen eigenen Bockmist behoben. Beim kompletten durchchecken der raspEasyFire Platine ist mir aufgefallen, dass die Widerstände "R8" und "R_8" vertauscht waren :oops:. Oh man ey...

    Vielen Dank auf jeden Fall für deine Hilfe! Ich hoffe du hast nicht zu viel Zeit damit verbracht...:confused:
     
    komp gefällt das.
  14. Ein Dauer-Reset des Funkmoduls ist natürlich auch eine Erklärung für das gezeigte Verhalten ;), auch wenn mich wundert, dass die erste SPI-Kommunikation offenbar trotzdem funktioniert o_O. Sehr schön, dass es jetzt läuft, viel Spaß damit und die investierte Zeit hat sich für mich auf jeden Fall rentiert, weil auch solche Sachen dabei helfen, das Programm besser zu machen.
     
    Feuer_und_Flamme! und frazzle gefällt das.
  15. Danke, jetzt werde ich mal die Platine für die zweite Zündbox bestücken und dann schauen, dass ich mir aus Blech oder Plexi entsprechende Platten für die Koffer schneide. Bin schon ganz heiß auf die erste Feuerprobe :D
     
  16. Am Wochenende stand die Anlage wieder einmal unter "Wettkampfbedingungen" auf dem Prüfstand für das Hochzeitsfeuerwerk eines Freundes. Trotz nicht optimaler Witterung mit drei Regenschauern während des Aufbaus hat die Technik ihren Dienst zuverlässig erledigt, der eine Sitzenbleiber (rote Kometenbatterie rechts vom Herz) resultierte aus einem während des Einpackens - die Hornbach-Stretchfolie hat alles perfekt vor der Feuchtigkeit geschützt - oder Verkabelns herausgezogenen Anzünder, der keinen Kontakt mehr zur Visco hatte.

    Video:


    Erlebnisse während des Ankabelns haben mich dazu bewogen, der v3-Software ein Update zu spendieren. Bisher wurden die Kanalzustände und -LEDs nur durch Aufforderung von außen, beim Drehen des Schlüsselschalters oder direkt nach dem Einschalten aktualisiert, mit dem gestern gepushten Update passiert es nun zusätzlich zyklisch mit einer Aktualisierungsrate von etwa 1,5 Sekunden, um den aktuellen Zustand auch quasi in Echtzeit nach außen zu spiegeln und dem Nutzer das händische Aktualisieren zu ersparen.
     
    Chiricahua und frazzle gefällt das.
  17. Wie versprochen, hier das Gruppenfoto:

    IMG_20190707_151049257.jpg

    Also, von mir aus kann Silvester dann kommen :)

    Eine Zündbox hat es leider nicht geschafft, daher "nur" 144 Cues für dieses Silvester, aber auch das ist mehr als eine Verdopplung gegenüber den letzten Jahren.

    Ich hatte ganz viel Spaß beim Bau und kann dieses Projekt wärmstens weiterempfehlen! Danke nochmal!!!
     
    Lexxx, cedrik, Mathau und 3 anderen gefällt das.
  18. Hätte eine Frage zur Zündbox in der Version V3. Ich verbaue hier den 12 Volt Akku von Reichelt wie in der Material Liste, wenn der Akku nun leer ist wie wird dieser wieder aufgeladen ? Ladebuchse ? Oder Akku raus - aufladen - Akku wieder rein ? Wie habt ihr das so gelöst ?

    Grüße Michael
     
  19. Ich habe bei meinen Koffern einen Ladebuchse eingebaut. Passend zu einem 12V Ladegerät.
     
  20. Braucht man dazu noch einen Laderegler oder einfach eine Ladebuchse mit Ladegerät ?
     
  21. Gibt es für den Zündkoffer auch eine Anleitung für den Zusammenbau ?
     
  22. #247 zuendlER84, 14. August 2019
    Zuletzt bearbeitet: 14. August 2019
    In der Anleitung gibt es auf Seite 13 in Abbildung 1.2 (b) eine Ansicht, wie bei mir der fertige Zündkoffer aussieht. Der Akku sitzt extra im Koffer und ist über die grünen Steckverbinder mit der Box verbunden. Zum Aufladen wird die Steckverbindung geöffnet und ein Ladegerät angeschlossen, das den gleichen Steckverbinder wie die Zündbox hat, so dass man es mit dem Akku verbinden kann.

    Die für den Koffer nötigen Modifikationen, also das Verändern der Schaumstoffeinlage und die EInhängevorrichtung für die Antenne sind ab Seite 108 geschildert (12.4.3 Koffer).
     
  23. Danke für die Info ich dachte eher an die V3 Platine, hat hier jemand einen Plan ? Klar ist das Bestücken , aber wo werden die ganzen Schalter angeschlossen ? LEDs sind alle kloar, aber + und - die zu den Klemmen gehen ( Brückenzünder )
     
  24. Wenn du die V3 Platine vor die hast, sind auf der rechten Seite die CH1 bis CH16 gezeigt. Dies ist die eine Seite der Zündbuchsen, jeweils eine pro Kanal.
    Die Spannung für die Buchsen kommt von den V+1 bis V+4. Die hängen alle gemeinsam an der Zündspannung.
     
  25. Es gibt auf der Platine entsprechend beschriftete Lötaugen, in denen die Kabel verlötet werden müssen:
    upload_2019-8-14_11-44-21.png
     
    pyro-michel und MegaSkylighter gefällt das.
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden