Beiträge von Ati

    was mir in diesem Zusammenhang auch noch einfällt. Die Kombination LED-Sender - Schlitz - Drehscheibe - Schlitz - IR-Empfangsdiode ist ein optisches System - wenn auch ohne Linsen.

    Aber - IR-LEDs haben Abstrahlwinkel von rund 90° , also +-45 um die Achse herum. Je dichter die Sende-LED am Schlitz ist, um so breiter wird auch der "Lichtstrahl". Mit dem Effekt, dass eben nicht nur die Drehscheibe angeleuchtet wird. Meiner Ansicht nach müsste die Sende-LED etwas Abstand zum Schlitz erhalten. Dann wird der Austrittswinkel kleiner und Einflüsse durch vagabundierende Strahlung kleiner oder ausgeschlossen.

    Die Innenseite des Schlitzes am besten mit mattschwarz pinseln (Längsreflektionen). Oder noch besser, beim Drucken des Gehäuses dafür sorgen, dass die Schlitzkanten konisch verlaufen von innen nach außen.

    Ich habe jetzt einige Versucher unternommen, damit das Script zum laufen kommt.

    Vorweg es tut es nicht.

    Ich habe also zunächst einmal mir die Datenpunkte in iobroker gesucht. Zum testen habe ich einfach an Stelle des Garagentores eine Schaltsteckdose verwendet. Über Kanal 3 kann State bearbeitet werden (ein oder aus - true - false).

    Also habe ich Kanal drei State eingesetzt in das Script

    Code
    on({id: 'mqtt.0.domoticz.in', change: "any"}, function (obj) {
      var value = obj.state.val;
      var oldValue = obj.oldState.val;
      console.log('value');
      if (getState("mqtt.0.domoticz.in").val == '    {"idx":1,"nvalue":0,"svalue":"30524xxxx"}    ') {
        setState("hm-rpc.2.000218A9916FDA.3"/*Schaltsteckdose test:3*/, true);
        setStateDelayed("hm-rpc.2.000218A9916FDA.3"/*Schaltsteckdose test:3*/, false, 1000, true);
        // RFID Karte
      }

    Aber es tut nicht. Und im log sehe ich auch gar keine Änderung. Nach meinem Dafürhalten wird das Script gar nicht angesprochen. Also Stimmt der Inhalt, der unter if (getState.... abgefragt wird nicht mit den Bedingungen überein. Davon abgesehen sieht der Code mit den vielen Leerzeichen in der if-Zeile sonderbar aus. Wie müsste der abgefragte Wert aussehen?

    im Wertefeld in von mqtt steht {"idx":1,"nvalue":0,"svalue":"30524xxxx"}

    <p>&lt;p&gt;Nur mal als Tipp. Die Scheibe dreht sich nicht konstant, von daher ist es grenzwertig die Bouncetime hoch zu setzen. Dreht sich die Scheibe mal wegen höherer Last schneller, kommt es zu Fehlern. Solche Timings sehe ich eher als Workaround und nicht als richtige Lösung.&lt;br&gt;Der Elektroniker in mir sagt, baue eine Flankentriggerung davor. Also derart, dass entweder nur ansteigende Flanken des Impulses gezählt werden, oder nur abfallende. Und wenn es Not tut, setzt man noch eine Entprellung dazu.&lt;br&gt;Was genau im Chip damit gemacht wird weiß ich z. B. nicht genau. Von daher würde ich also versuchen fehlerfreie Impulse zu generieren.&lt;br&gt;Wer einen Oszillografen sein eigen nennt, kann ja das Impulssignal sich mal genauer anschauen. Da sind dann Unsauberkeiten direkt sichtbar.&lt;br&gt;Leider bin ich mit dem Projekt noch nicht so weit und kann nicht direkt testen und Bilder liefern. Der Drucker steht unausgepackt in der Garage (keine Zeit)u und derzeit will erst mal NFC richtig funktionieren ;–)&lt;/p&gt;</p>
    <br><p>&lt;p&gt;&lt;br&gt;&lt;/p&gt;</p>
    <br><p>&lt;p&gt;&lt;br&gt;&lt;/p&gt;</p>
    <br><p>&lt;p&gt;Ati&lt;/p&gt;</p>

    Hab die Nummern noch mal geprüft.

    Es ist weder hex noch oct noch dez. Ich habe mal alle Werte von links nach rechts und umgekehrt umgerechnet. Keins davon passt.

    Code
    Dieser interne Code wird immer nur als Hexadezimalcode dargestellt.
    Der interne Code kann in verschiedene externe Dezimalcodes umgerechnet werden.

    Beispiel

    08H>10D interner UID Code des Chips

    8 stellig Hexadezimal(02b0a5fd) in 10 stellig Dezimal

    0045131261

    Da es noch einige weitere Möglichkeiten der Umrechung gibt, ist das also müßig hier Gleichheit zu suchen. Macht wohl jedes System nach eigenem Bedarf

    Quelle: RFID Chip Codes

    Ich habe zum Anlegen des Scriptes copy/paste bzw. kopiere aus Objekte /Feld "Wert" in Zwischenablage und Einfügen in Textfeld genutzt. Fehler sind damit eigentlich ausgeschlossen.

    Kann man ein log oder auch Debug aktivieren, sodass man im Script oder woanders sehen kann, dass das Script arbeitet? Wie gesagt - Blockly ist Neuland für mich.

    Würde denn bei Änderung von "aktualisieren" auf "ändern" auch die gleiche ID erneut erkannt? Denn es kann ja sowohl die gleiche ID als auch eine andere ID das Tor bedienen.

    Ich halte nicht nur die gleiche Karte vor. Es sind insgesamt zunächst drei RFID-Chips und die Karte, die bei dem Modul dabei war. Also für Abwechslung ist schon gesorgt.

    Und ja, es ist immer die gleiche Ziffernfolge je Chip oder Karte. Vielleicht sollte ich zum Funktionstest mal nicht das Tor nehmen, sondern auf eine Lampe verknüpfen. :) Die Rennerei ist lästig.

    Aber würde das Script denn so funktionieren?

    So, habe ein paar Tage experimentiert. Allerdings nicht ganz erfolgreich. Immerhin habe ich jetzt das Blockly Prinzip halbwegs kapiert.schimmer-media.de/index.php?attachment/2967/

    Also meinem Verständnis nach – tritt im Objekt domoticz eine Änderung ein, wird diese Script abgefragt. Trifft dann unter mache einer der genannten Werte zu, dann setze den Aktor Garagentor auf true und im zweiten Schritt eine Sekunde später wieder auf false.

    Ich nehme mal, das true=wahr und false=unwahr entspricht.

    Aber irgendwas stimmt halt noch nicht. Das Script funktioniert noch nicht.

    Davon mal abgesehen sind die unter Wert stehenden Zahlen nicht identisch mit der RFID–Nummer der Karte bzw. des Chips. Diese habe ich testweise an einer RFID–Station ausgelesen. Das nur am Rande. Ich wollte vorab im Wertefeld die Nummer schon mal eintragen. Aber das funktioniert so dann nicht.

    Hat jemand einen Rat zu obigem Script?

    Ich habe mir das Video von Dennis über nodeMCU und NFC lang und breit reingezogen, Teile bestellt, geflasht, gelötet, über fehlerhafte Hinweise gemault, viel gesucht und letztlich zum laufen gebracht.

    Und jetzt kommt es aber zum Problem. Ich bin einfach noch nicht fit für Blockly. Das Script von Dennis schaltet Lampen ein oder aus. Das kann ich aber so nicht gebrauchen. Mein Garagentor wird von einer Homematic Schaltplatine angesteuert. Da die üblichen Garantore (Teckentrup) mit einem Taster bedient werden ist also eine toggle Funktion unbrauchbar. Die Platine bietet aber bei derzeitiger Firmware keine Tastfunktion. Also muss diese Funktion per Programm erzeugt werden. In diesem Fall automatisch nach einer Sekunde ausschalten. Ok, das klappt so weit. Ich kann nun mit einer Fernbedienung von HM oder auch HM IP oder auch mit Tastschalteraktoren das Tor bedienen.

    Aber jetzt soll auch der Wahnsinn Einzug halten – NFC. Ich brauche dazu ein Blockly oder Java, was eine Tastfunktion abbildet. Also in etwa so:

    RFID erkannt – sofort einschalten des Aktors – Wartezeit 1 Sekunde – ausschalten

    Wie geht das? Ich habe dazu leider nicht viel gefunden

    Grüße

    Andreas

    Hallo Community,

    ich habe gestern ein paar MCUs per Postboten erhalten und wollte einen mal probieren zu flashen. Aber das hakt ein wenig.

    Es sind ESP8266MOD-Teile. Habe mir das tolle Video über NFC reingezogen und bin Schritt für Schritt danach vorgegangen. Also alle Pakete runtergeladen, Treiber installiert. MCU angeschlossen (plingpling -verbunden) COM4 detektiert, Flash.exe mit Adminrechten ausgeführt.

    In den ersten fünf Durchgängen hat es nicht hat geklappt. Kam immer Write Error. Immer wieder "Flash" und "reset" gedrückt bis die LED irgendwann dunkel war. Erneut durchlaufen lassen - Erfolg.

    Nun das Teil versucht mit WLAN zu finden, was aber erst nach Neustart gelang. esp_0 ist vorhanden lässt sich aber mit dem Passwort "espconfig" nicht verbinden.

    Habe ich was übersehen?

    Grüße und Danke

    Ati

    Ich bin seit einiger Zeit mit Homematic und nun inzwischen auch seit ein paar Monaten mit ioBroker unterwegs. Der Weg zu ioBroker war aus meiner Sicht zunächst einmal eine vernünftige Visualisierung. Dass da noch viel mehr geht, kam erst später etwas detaillierter zu Tage. Mein Hauptaugenmerk liegt also bisher immer noch in einer soliden Grundprogrammierung in der CCU (PiVCCU2). Alle Grundfunktionen sollten sicher abgebildet sein.

    MIt ioBroker kamen dann Wünsche hinzu. Hier speziell NFC. Ich habe mir dann eine halbe Stunde lang das tolle Video reingezogen, dann noch eins und noch eins....Toll gemacht :thumbup:

    Habe gleich mal ein paar Teile bestellt (für Dich auch bei Gearbest). Bin mal gespannt, ob da was zum Laufen kommt,;)