• Dein Code läuft (mit ein paar "nicht invasiven" Erweiterungen) bei mir schon gut 2h auf einem Wemos D1 mini Clone durch. Ich melde mich später nochmal.

    Edit: Läuft noch immer - nach nunmehr ca. 6h. Allerdings ohne große "Last" auf dem Server - sprich: Nur hin und wieder mal ein Command gesendet.

    Ping Statistik: 14 von 22440 Pakete sind verloren gegangen - also verschwindend wenig.

    Aber: Belastet man die "Stepper/Steps" Funktionen heftig mit Requests, scheint es den Controller zu überlasten. Vor allem, wenn die Requests schneller kommen, als die MCU die Steps bearbeiten konnte.

    Der client wir dann nicht mehr disconnected, sondern wartet scheinbar immernoch auf Daten.

    Ich schau mir das mal an und teste mal bisschen weiter.

    OpenELEC 5.0 Final (5.0.7 / 5.0.8 github) | SolidRun CuBox-i4Pro (CPU: ARM Cortex A9 | GPU: Vivante GC2000)
    Kein kodi.log => Kein Support! | Spendier' mir ein Bier!

    Einmal editiert, zuletzt von root2 (26. November 2017 um 20:07)

  • Bitte mal den Code im Anhang testen. Läuft bei mir auch mit hoher Last recht stabil.

    Hab ein paar Veränderungen vorgenommen:
    - Non-blocking delays
    - Timeout für clients
    - Bisschen mehr [definition=12,0]debug[/definition] Infos in Terminal und HTTP Response

  • Ohne es getestet zu haben schon mal 1000 Dank.

    Der neue ESP läuft ebenfalls nicht mit dem (alten) Code. Also läuft ... aber eben nur eine gewisse Zeit.
    Ich habe direkt 2 bespielt und an verschiedenen Stellen im Haus laufen lassen. Nur um auch das auszuschließen.

    Wird gleich geflasht.

  • Läuft :)

    Dann weiter zum Display:

    Den Python-Part scheine ich am Laufen zu haben.
    Zumindest startet es noch.
    Anbei zum Vergleich die Datei dazu.

    Im Sketch bekomme ich aber ein
    'req' was not declared in this scope
    Verstehe ich nicht, da doch genau der Befehl sehr oft im Sketch aufgerufen wird.

    Die ino auch ist auch mit in der ZIP.

    Das ganze ist jetzt wieder auf dem kleinen Wemos D1 mini.
    Pins sind jetzt fast alle belegt. :thumbup:

    Aktueller Plan:
    - auf Hilfe für das Display hoffen :rolleyes:
    - Stromversorgung durchgehen
    - Gestaltung

    Die Steuerplatine für den Stepper ist schon recht groß.
    Und da ich ja wieder billig gekauft habe, ist es ein Stepper bei dem die Achse nicht in der Mitte sitzt.
    Das macht den Aufbau etwas spannender.
    Aber das sind alles Probleme für später.

  • Das funktioniert nicht aus 2 Gründen,

    Du hast req.indexOf vor der Definition String req = ... aufgerufen, da existiert es noch nicht
    und es würde auch nicht funtionieren, da client.readStringUntil('\r'); den String ja erstmal liest.

    Heisst, den Control LCD Block vor z.B. Control LED aber auf jeden Fall hinter Read the first line of request Block.

    Cheers
    Claudia

  • ... und den LCD String bekommst Du nur wenn tr < ts ist (was immer das heissen mag)

    vielleicht testhalber ein doLCD... vor dem if(ts > tr)

    Cheers
    Claudia

  • Das Python script sieht seltsam aus, da scheinen Einrückungen nicht stimmig.
    Sieht bei dir Zeile 271 -274 auch so aus?


    Python
    # IS ISS VISIBLE NOW
            if ( altDeg > int(HOR) ):
            if INFO:
            print "ISS IS VISIBLE"

    wenn ja, dann ist das kaputt, macht so keinen Sinn.

    Cheers
    Claudia

  • Eigentlich sollte da der Syntaxcheck zuschlagen, da ja nach einem if ... ein Einrücken erwartet wird.
    Wahrscheinlich ist der SourceCode mit Tabs und Leerzeichen vermischt.
    Ich besorge mir mal das von github und prüfe das.
    Bis dann

    Cheers
    Claudia

  • Ja, ist so Tabs und Leerzeichen sind vermischt -> kann, muß aber nicht funktionieren.

    Magst Du die Struktur sowie es momentan ist beibehalten oder darf ich das umschreiben?
    Z.B wird in fast jeder do... Funktion der gleich try...except Block ausgeführt,
    den könnte man ja in eine eigene Funktion packen und dann von den anderen aufrufen.

    Ḿache ich gerne, habe aber ÜBERHAUPT kein Problem damit wenn Du sagst, nein, lass es wie es ist damit komme ich (besser) klar.

    Hier der nicht geänderte Code (natürlich wurden die Tabs gegen Leerzeichen getauscht)

    Cheers
    Claudia

  • War einfacher als gedacht:
    einfach in den Zeilen zum Stepper die Schrittwerte umdrehen. Genau genommen steht es sogar im Code, wie es geht:


    Hier jetzt Zeile 13 und 20 stepper.step(-1) und (1) getauscht - läuft.

    Mehr Zeit habe ich heute auch schon wieder nicht. Morgen oder am Wochenende geht es weiter. Die Flyby-Info im Display wäre halt schon noch schick.

  • >Die Flyby-Info im Display wäre halt schon noch schick.

    Ist das ein offener Punkt bei Dir, sprich implementieren und testen oder läuft mein Code nicht?
    Nur um sicherzustellen das wir auf dem gleichen Stand sind, das angehängte zip
    sollte schon funktionieren und auf der seriellen Konsole die Displayasugaben erzeugen.

    Bin leider noch nicht dazugekommen, das Skript etwas zu vereinfachen, da ich momentan mit dem LE Buildprozeß kämpfe.


    Cheers
    Claudia

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!