Beiträge von gemu2015

    dieser Teil is etwas unglücklich formatiert

    jeder ist eingeladen die Docs zu verbessern.


    Bildgrösse setzen SVGA

    wc(2 0 7)


    Schwarz weiss Bild

    wc(2 1 2)


    Spiegel an

    wc(2 3 1)

    Spiegel aus

    wc(2 3 0)

    ok, also zusätzlich


    also

    >D

    bs=0



    >W

    bu(bs "ok" "Bild speichern")



    if pin[p1]>0

    or bs>0

    and timer==0

    then

    bs=0

    ; Bild speichern in RAM Buffer 1

    ja sicher wenn du noch freie pins hast kein problem.


    p1 = pin nummer des pir eingangs

    p2 = pin nummer des tasters nach Masse


    in >B zusätzlich

    spinm(p2 P)


    in >S


    if pin[p1]>0

    or pin[p2]<1

    and timer==0

    then

    ; Bild speichern in RAM Buffer 1

    w=wc(3)

    h=wc(4)

    brauchst du. Ist das Bildformat


    delay(200)

    brauchst du nicht, da du die weisse LED nicht benutzt.


    die Zeilen brauchst du auch nicht


    mailout=0


    if limit==0

    then

    limit=1000

    endif


    if chg[limit]>0

    then

    svars

    endif


    probiers einfach aus und guck dir die Konsole an.

    Wenn eine Variable fehlt, wird das angezeigt.

    Der Pin 1 ist ja der TRX Pin. Hat es damit schon mal funktioniert ?


    Würde einen anderen Pin versuchen und


    spinm(xx P) also mit Pullup definieren.


    Dann kurz auf Masse ziehen und dann müsste ein Bild erzeugt werden.


    Dann erst mit dem PIR weiter testen

    sieht weitgehend ok aus.


    siehst du denn dass der PIR einschaltet im WEBUI wird das ja angezeigt.


    oben hast geschrieben dass du PWM auf 1 definiert hattest.


    den PIR hattest du aber auch auf 1 definiert.


    wie gesagt du MUST einen Neustart machen damit die alten PIR Definitionen gelöscht werden

    Du must nach dem du einen GPIO für die PWM gewechselt hast einen Reset machen sonst bleiben alle zuvor als PWM definierten Pins auch auf PWM.


    Ansonsten hat PWM nichts mit dem Bild Speichern zu tun.


    Ist das denn vorher schon mal gegangen ?


    Kannst du das SD Kartenverzeichnis anzeigen ?


    Poste halt mal dein aktuelles Script.

    hab noch mal eine Änderung gemacht damit man auch die PWM Frequenz angeben kann,


    also

    pwm(-12)

    ist default 4000 Hz


    z.B.

    pwm(-12 100)


    ist PWM mit 100 Hz


    damit kannst du die optimale Einstellungen für das Servo finden

    Hab das grad mal recherchiert.

    Wenn du ein Modellbau servo verwendest hast du 1.5 ms für die Mittelstellung und 3ms Vollausschlag.

    also hast du bei 1000 Hz ca 1/3 Range bei 4000 noch weniger

    versuch also mal noch niedrigere Frequenzen.

    Bei mir funktioniert definitiv der PWM an 12 . Gemessen mit Oszi

    Pin 1 geht bei mir auch nicht.

    Hast du wirklich meinen fork benutzt ?

    Der Pin muss in Tasmota auf none stehen


    du benutzt ein Servo.

    Eventuell ist die Frequenz dafür zu hoch.

    der normale PWM nimmt 1000 Hz ich habe 4000 genommen.

    Kannst du im Quellkode mal abändern.


    1000 statt 4000


    in dieser subroutine


    void esp32_pwm(int32_t value) {

    if (value < 0) {

    if (value <= -64) value = 0;

    ledcSetup(7, 4000, 10);

    ledcAttachPin(-value, 7);

    ledcWrite(7, 0);

    } else {

    if (value > 1023) {

    value = 1023;

    }

    ledcWrite(7, value);

    }

    }

    das ist der serial Tx pin. Könnte sein dass Tasmota das überdefiniert. Habe ich nicht abgefangen.


    Versuch mal nen anderen pin.

    Woolli


    Hab das mal für den ESP32 eingebaut. (in meinem fork)

    Bisher nur 1 Kanal, Range 0-1023


    Kein PWM in Tasmota definieren.


    z.B hier mit Pin Nummer 12


    >D

    slider=0


    >B

    ; definiere die Pin Nummer

    pwm(-12)


    >F

    ; setzt den Ausgang auf slider (0-1023)

    pwm(slider)


    >W

    ; slider definieren

    sl(0 1023 slider "0" "Dimmer" "1023")


    Gegebenenfalls musst du auf deinen Wunschbereich umskalieren


    Habe gerade ein merkwürdiges Problem festgestellt.


    Achtung

    Wenn man das Script direkt von hier in den Scripttext von Tasmota kopiert geht das manchmal schief.

    Es gibt hier wohl "unsichtbare" Zeichen im Forumstext die der Scripter nicht anzeigt aber nicht verträgt.


    Habe den Text dann noch mal von Hand in Tasmota eingegeben und es ging dann.

    Ist mir nichts bekannt wie du das wegbekommen kannst. Der PWM Dimmer ist ja für LED Leuchten gedacht und deshalb hat er immer auch an, aus.


    Sollte eigentlich einen PWM als DAC Ersatz geben um analoge Signale auszugeben.