Weil´s sein musste … Thema Fingerprint

Begonnen von Papa Romeo, 21 August 2024, 23:56:23

Vorheriges Thema - Nächstes Thema

Papa Romeo

Zitat von: Icinger am 12 Oktober 2024, 17:16:37Hättest dir sparen können, ich hab das seit 1 1/2 Jahren im Einsatz bei mir.
Hab auch die Farben, LED-Modus etc. per MQTT steuerbar gemacht.

... na prima ... und hätte ich´s nicht gemacht, wärste nicht "d`rübergestolpert" und hättest uns diese Info nie gegeben ... ::)

Also, dann stell doch deine Version auch ein, dann haben wir ein bisschen Auswahl ...

LG
Papa Romeo
...die richtige Lötspitzentemperatur prüft man zwischen Daumen und Zeigefinger.
...überlasse niemals etwas einer Software, das du hardwaremässig erreichen kannst.
...unvorsichtige Elektriker werden schnell zu leitenden Angestellten.
und...never change a running System...no Updates if not necessary

pc1246

#121
Moin
Ich habe jetzt etwas rumgespielt, und bin fast schon am Ziel!
Allerdings waere ich auch ueber die Version von Icinger ganz froh!
Der Hintergrund ist, dass die Kellertuer auf beiden Seiten eine Klinke hat.
Mit der Ringfarbe koennte man dann von aussen sehen, ob die Tuer verschlossen ist, oder nicht.
Beziehungsweise ob sie gerade auf-/abschliesst.
Wenn ich mal wieder mehr Zeit habe, werde ich die Papa Romeo Variante aber auch noch testen.
BTW: Erstmal werde ich wohl die Verteilerdose nehmen. Der Reader passt da gut rein, und ausser dem ESP braucht es ja nichts.
Was mir gar nicht gefaellt, ist die Tatsache, dass die Webpage komplett offen ist.
Somit kann jeder alles sehen, sobald er die IP und das WLAN hat.
Gruss Christoph
HP T610
Onkyo_AVR;3 Enigma2; SB_Server ; SB_Player; HM-USB mit 15 HM-CC-RT-DN, 3 HM_WDS10_TH_O, 6 HM-Sec-SCo, 4 HM-Sec-MDIR-2, 1 HM-Sen-MDIR-O-2, 8 Ferion 5000 OW ; PhilipsTV; 4 harmony hub; Jeelink mit 9 PCA301; Somfy; S7-300; 3 LGW; HUE; HM-IP auf Charly

Papa Romeo

...na ja, sagen wir mal so, wenn jemand dein WLAN-Passwort kennt, hast du eh verloren. Dann ist nicht nur der Fingerprint offen wie ein Scheunentor.

LG
Papa Romeo
...die richtige Lötspitzentemperatur prüft man zwischen Daumen und Zeigefinger.
...überlasse niemals etwas einer Software, das du hardwaremässig erreichen kannst.
...unvorsichtige Elektriker werden schnell zu leitenden Angestellten.
und...never change a running System...no Updates if not necessary

RappaSan

Zitat von: Papa Romeo am 12 Oktober 2024, 20:03:14
Zitat von: Icinger am 12 Oktober 2024, 17:16:37Hättest dir sparen können, ich hab das seit 1 1/2 Jahren im Einsatz bei mir.
Hab auch die Farben, LED-Modus etc. per MQTT steuerbar gemacht.

... na prima ... und hätte ich´s nicht gemacht, wärste nicht "d`rübergestolpert" und hättest uns diese Info nie gegeben ... ::)

Also, dann stell doch deine Version auch ein, dann haben wir ein bisschen Auswahl ...

LG
Papa Romeo

Was ist denn nun mit der alternativen Version von Icinger? ???

Papa Romeo

#124
Also ich denke, dass meine beiden 3-farbigen irgend welche Exoten sind. Unter der Arduino IDE funktionieren sie, obwohl sie nur 100 Speicherplätze haben, genau so gut wie der 7-farbige. Nutze ich die 3-farbigen unter platformio wird aus Ihnen was weiß ich ausgelesen. Keine Ahnung warum. Ich hab jetzt nochmal einen anderen Sketch für den ESP32 aus dem Netz getestet. Auch hier, funktioniert der 7-farbige perfekt.
Was die 3-farbigen machen seht ihr im Folgenden.

=========================================
== Fingerprint Sensor R503 Example ======
=========================================

 >> Sensor 1 found!
Status Register: 0x100
System Identifier Code: 0x0000
Finger Library Capacity: 6926
Security Level: 3456
Device Address: 0x401FFB3F
Data Package Size: 1024 bytes
Baudrate: 619920000

== MENU =================================

[e] Enroll a New Finger
[s] Search a Finger (30s)
[m] Match a Finger
[d] Delete a Finger
[c] Clear Library
[p] Print Index Table
[t] Transfer (download) Template to MCU
[r] Restore Template (upload) to Sensor

== ENTER ACTION =========================


== MENU =================================

[e] Enroll a New Finger
[s] Search a Finger (30s)
[m] Match a Finger
[d] Delete a Finger
[c] Clear Library
[p] Print Index Table
[t] Transfer (download) Template to MCU
[r] Restore Template (upload) to Sensor

== ENTER ACTION =========================
 > p
----------------------------------------

Reading index table...
- Amount of templates: 0
- Fingerprint library capacity: 283
- Fingerprints stored at locations (ID):
  10  42  45  46  56  57  64  65  66  67  68  69  70  71  72  73  74  75  76  77  78  79  80  81  82  83  84  85  86  87  88  89  90  91  92  93  94  95  105 
121  122  152  153  154  155  156  157  158  159  160  168  169  171  172  176  192  195  198  199  201  202  203  204  208  209  211  212  213  214  215  216 
217  218  219  220  221  224  229  242  243  244  245  246  247  248  249  250  251  252  253 

... wenn ich den Sensor mit Eingabe von "c" mehrfach lösche, kann es sein, dass er mir auch mal die Kapazität von 100 Finger und keine gespeicherten ID´s anzeigt.
Nach einem Neustart dann dann wieder das Bild wie im ersten Code-Block.

LG
Papa Romeo
...die richtige Lötspitzentemperatur prüft man zwischen Daumen und Zeigefinger.
...überlasse niemals etwas einer Software, das du hardwaremässig erreichen kannst.
...unvorsichtige Elektriker werden schnell zu leitenden Angestellten.
und...never change a running System...no Updates if not necessary

Papa Romeo

Zitat von: UweH am 12 Oktober 2024, 09:33:55habe ich mal getan und nur noch den Aufruf von "finger.begin" in "void setup" übriggelassen.

Also zurück zum zum ESP8266. Ich habe mit dem laufenden Sketch zwei Masterfinger und zwei Zugangsfinger gespeichert . Also insgesamt vier Finger.
Nach dem Entfernen des finger.begin(57600) nach dem ersten finger.LEDcontrol Befehl erhalte ich folgende Parameter:

Status        : 0x4
System ID     : 0x10
Kapazitaet    : 16481
Security Stufe: 23056
Sensor Adresse: 405D8E0E
Packet Laenge : 24
Baud Rate     : 13568

... 4 Fingerprints gespeichert ...

--> Masterfinger  :  2  (Master_1: ID 98 || Master_2: ID 99)
--> Zugangsfinger :  2

... Scanmodus aktiviert !


Deaktiviere ich das finger.begin(57600) vor den nächsten finger.LEDcontrol Befehl erhalte ich folgende Parameter-Infos:
Status        : 0x4
System ID     : 0x0
Kapazitaet    : 100
Security Stufe: 3
Sensor Adresse: FFFFFFFF
Packet Laenge : 128
Baud Rate     : 57600

... 10 Fingerprints gespeichert ...

--> Masterfinger  :  2  (Master_1: ID 98 || Master_2: ID 99)
--> Zugangsfinger :  8

... Scanmodus aktiviert !

Schreibe ich den Sketch für den ESP32 um und lasse die finger.LEDcontrol Befehle komplett weg, ließt der Sketch zwar die korrekten Parameter aus, macht aber nach der erfolgreichen Registrierung der beiden Masterfinger ständig Reboots.

Damit ist es wohl besiegelt, dass es da anscheinend mal eine Charge R503 gab, die nicht so ganz korrekt funktionieren.

Dies alles mal nur so als Info, da eventuell andere User auch im Besitz eines R503 dieser Charge sind.

LG
Papa Romeo
...die richtige Lötspitzentemperatur prüft man zwischen Daumen und Zeigefinger.
...überlasse niemals etwas einer Software, das du hardwaremässig erreichen kannst.
...unvorsichtige Elektriker werden schnell zu leitenden Angestellten.
und...never change a running System...no Updates if not necessary

Icinger

Sorry, hat ein paar Tage gedauert.....Aber hier mal mein Sketch für den Sensor inkl. meiner Definition.
Da sind die Setter eh selbstredend, denke ich. Wenns noch Fragen gibt, nur her damit :)

define mq2_Fingerprint MQTT2_DEVICE
attr mq2_Fingerprint DbLogExclude .*
attr mq2_Fingerprint devStateIcon 1.on:on:R1off 1.off:off:R1on 2.on:on:R2off 2.off:off:R2on 3.on:on:R3off 3.off:off:R3on 4.on:Wecker.Wochentags 4.off:Wecker.Aus:ring
attr mq2_Fingerprint readingList fingerprintDoorbell/matchId:.* matchID\
fingerprintDoorbell/ring:.* ring\
fingerprintDoorbell/matchConfidence:.* confidence\
fingerprintDoorbell/matchName:.* name\
fingerprintDoorbell/lastLogMessage:.* log\
fingerprintDoorbell/out1:.* Relais1\
fingerprintDoorbell/out2:.* Relais2\
fingerprintDoorbell/out3:.* Relais3
attr mq2_Fingerprint setList ringEnabled:On,Off,Silent cmnd/fingerprintDoorbell/RingEnabled $EVTPART1\
ignoreTouchRing:on,off cmnd/fingerprintDoorbell/ignoreTouchRing $EVTPART1\
LED_standbyType:on,off,breath,blink cmnd/fingerprintDoorbell/LEDRingStandby $EVTPART1\
LED_standbyColor:red,blue,purple,green,yellow,cyan,white cmnd/fingerprintDoorbell/LEDColorStandby $EVTPART1\
LED_recognised:red,blue,purple,green,yellow,cyan,white cmnd/fingerprintDoorbell/LEDColorRecognised $EVTPART1\
LED_ring:slider,0,30,600 cmnd/fingerprintDoorbell/LEDRing $EVTPART1\
LED_unknown:red,blue,purple,green,yellow,cyan,white cmnd/fingerprintDoorbell/LEDColorUnknown $EVTPART1\
Relais1:on,off cmnd/fingerprintDoorbell/out1 $EVTPART1\
Relais2:on,off cmnd/fingerprintDoorbell/out2 $EVTPART1\
Relais3:on,off cmnd/fingerprintDoorbell/out3 $EVTPART1\
R1on cmnd/fingerprintDoorbell/out1 on\
R1off cmnd/fingerprintDoorbell/out1 off\
R1timed cmnd/fingerprintDoorbell/out1\
R2on cmnd/fingerprintDoorbell/out2 on\
R2off cmnd/fingerprintDoorbell/out2 off\
R2timed cmnd/fingerprintDoorbell/out2\
R3on cmnd/fingerprintDoorbell/out3 on\
R3off cmnd/fingerprintDoorbell/out3 off\
R3timed cmnd/fingerprintDoorbell/out3\
ring cmnd/fingerprintDoorbell/ring now\
reboot cmnd/fingerprintDoorbell/reboot now
attr mq2_Fingerprint stateFormat 1:Relais1\
2:Relais2\
3:Relais3\
4:ring\
<br><br>log
Verwende deine Zeit nicht mit Erklärungen. Die Menschen hören (lesen) nur, was sie hören (lesen) wollen. (c) Paulo Coelho

Papa Romeo

#127
Zitat von: Icinger am 17 Oktober 2024, 08:33:18Sorry, hat ein paar Tage gedauert.....Aber hier mal mein Sketch für den Sensor inkl. meiner Definition.
Da sind die Setter eh selbstredend, denke ich. Wenns noch Fragen gibt, nur her damit :)

Danke erst mal für das Bereitstellen des Sketches.

Wann hast du den Sketch zum letzten mal kompiliert?

Ich frage, da die Bibliothek des ESPAsyncWebServer, ich glaube seit Juni oder Juli nicht mehr zur Verfügung steht und sich der
Sketch, so wie du ihn eingestellt hast, nicht mehr kompilieren lässt.

Ich hab´s jetzt mal so abgeändert, dass sich beide Versionen, "OTA" und "serial" kompilieren lassen.

Kurze Frage: Was ist der Unterschied zwischen den beiden Sketchen?

LG
Papa Romeo
...die richtige Lötspitzentemperatur prüft man zwischen Daumen und Zeigefinger.
...überlasse niemals etwas einer Software, das du hardwaremässig erreichen kannst.
...unvorsichtige Elektriker werden schnell zu leitenden Angestellten.
und...never change a running System...no Updates if not necessary

Icinger

Indexing .pio/build/esp32udoit-devkit-v1-OTA/libFrameworkArduino.a
Archiving .pio/build/esp32udoit-devkit-v1-OTA/lib6b5/libESP Async WebServer.a
Indexing .pio/build/esp32udoit-devkit-v1-OTA/lib6b5/libESP Async WebServer.a
Linking .pio/build/esp32udoit-devkit-v1-OTA/firmware.elf
Retrieving maximum program size .pio/build/esp32udoit-devkit-v1-OTA/firmware.elf
Checking size .pio/build/esp32udoit-devkit-v1-OTA/firmware.elf
Advanced Memory Usage is available via "PlatformIO Home > Project Inspect"
RAM:   [=         ]  14.4% (used 47044 bytes from 327680 bytes)
Flash: [========= ]  87.9% (used 1152362 bytes from 1310720 bytes)
Building .pio/build/esp32udoit-devkit-v1-OTA/firmware.bin
esptool.py v3.1
Merged 1 ELF section
======================================================================= [SUCCESS] Took 8.65 seconds =======================================================================

Environment               Status    Duration
------------------------  --------  ------------
esp32udoit-devkit-v1-OTA  SUCCESS   00:00:08.648
======================================================================= 1 succeeded in 00:00:08.648 =======================================================================
Grad eben neu kompiliert.....Liegt aber vmtl. daran, dass VSCode die Library ja schon vorhanden ist :(

Der einzige Unterschied ist die Art, wie der Sketch auf den ESP kommt, also über UART oder eben OTA
Verwende deine Zeit nicht mit Erklärungen. Die Menschen hören (lesen) nur, was sie hören (lesen) wollen. (c) Paulo Coelho

Papa Romeo

Zitat von: Icinger am 18 Oktober 2024, 05:31:36Der einzige Unterschied ist die Art, wie der Sketch auf den ESP kommt, also über UART oder eben OTA

Ok, Danke.

Hab ich jetzt auch gesehen, nachdem ich die platformio.ini bearbeitet habe.
Mit der eingestellten Baudrate hatte der Upload bei mir nicht funktioniert.

Desweiteren solltest du eventuell deine persönlichen WLAN-Daten aus dem Sketch nehmen,
da der Sketch sonst nicht in den AP-Modus geht und der WLAN-Aufbau fehlschlägt.

LG
Papa Romeo
...die richtige Lötspitzentemperatur prüft man zwischen Daumen und Zeigefinger.
...überlasse niemals etwas einer Software, das du hardwaremässig erreichen kannst.
...unvorsichtige Elektriker werden schnell zu leitenden Angestellten.
und...never change a running System...no Updates if not necessary

Papa Romeo

#130
Ich hab am "FingerprintDoorbell Programm ein wenig weiter "rumgebastelt". Einiges von Icinger übernommen,
da das wirklich nicht ganz ohne ist, aber noch ein paar weitere Optionen hinzugefügt, die für mich irgendwie Sinn ergaben.

Die da wären:

1. einen BH1750 Lichtsensor implementiert. Da das mit den "Klingeln" bei unregistrierten Fingern nicht so ganz meins war,
  aber der Touchring z.B. dann als "Lichtschalter" genutzt werden kann, schaltet dieser nun, wenn der Lux-Wert, den in der WEB-
  Oberfläche eingegebenen Wert unterschreitet, ein Relais, das dann den Lichttaster in der Sprechanlage bedient. Der Schwellwert
  des Sensors,  kann über die Web-Oberfläche eingeben werden.

2. einen Buzzer zugefügt. Dieser signalisiert die Erkennung eines registrierten Fingers akustisch. Dieser Buzzer kann über die
  WEB-Oberfläche aktiviert bzw. deaktiviert werden.

3. Zwei weiter Button auf der WEB-Oberfläche. Mit diesen kann eingestellt werden ob der Standby-LED-Ring ebenfalls in Abhängigkeit
  der ermittelte Lichtstärke des BH1750 gesteuert werden soll. So z.B: bei Dunkelheit LED-Ring aktiv, bei Helligkeit inaktiv.

Des weiteren habe ich die WEB-Oberfläche "eingedeutscht".

Im Anhang Bilder dazu. Bei Interesse melden.

LG
Papa Romeo

...die richtige Lötspitzentemperatur prüft man zwischen Daumen und Zeigefinger.
...überlasse niemals etwas einer Software, das du hardwaremässig erreichen kannst.
...unvorsichtige Elektriker werden schnell zu leitenden Angestellten.
und...never change a running System...no Updates if not necessary

UweH

Interesse! ;)
Ich möchte das gerne mal testen, obwohl sich dieser Zweig des Projektes immer mehr von meinem Plan entfernt, aber interessant ist es trotzdem.

Danke und Gruß
Uwe

Papa Romeo

#132
Hallo Uwe, hallo RappaSan,

ich hab den Sketch hinzugefügt. Das PW kennt ihr!

LG
Papa Romeo

@Uwe: Da ich gern probiere was alles geht, ist als nächstes die Implementierung eines RFID-Readers geplant. Ich habe zwar den RC522 da, aber der funktioniert im originalen Zustand nur über
            SPI. Da ich mit dem BH1750 aber schon I2C nutze, möchte ich den Reader auch gerne über diese Schnittstelle ansprechen. Man könnte den RC522 zwar auf I2C "umfrickeln", aber dazu
            müsste das IC runter, um an die entsprechenden Verbindungen zu kommen. Das tue ich mir nicht an und habe deshalb einen PN532 geordert, der diese Option von Haus aus über DIP-
            Schalter mitbringt. Also dauert es noch ein bisschen.
...die richtige Lötspitzentemperatur prüft man zwischen Daumen und Zeigefinger.
...überlasse niemals etwas einer Software, das du hardwaremässig erreichen kannst.
...unvorsichtige Elektriker werden schnell zu leitenden Angestellten.
und...never change a running System...no Updates if not necessary

UweH

Moin,

Danke für den Sketch. Lichtsensor funktioniert, wenn Du mir noch den Port für den Buzzer sagen könntest...
Ich will ja weg von RFID, will aber unbedingt das Nextion-Display weiterhin mit integrieren. Läuft zur Zeit auf einem Arduino. Sowohl der RFID-Scanner als auch die richtige Tastenkombination auf dem Display öffnet die Tür.
Bei nächster Gelegenheit wechsele ich das Klingeltableau samt Unterputzkasten aus. Da funktioniert das Display zwar noch nicht wieder, aber das wird dann schon. Nach einigen Änderungen ist auch die nächste Platine schon unterwegs...

Gruß
Uwe 

Papa Romeo

#134
Zitat von: UweH am 30 Oktober 2024, 09:34:11Danke für den Sketch. Lichtsensor funktioniert, wenn Du mir noch den Port für den Buzzer sagen könntest...

Die Ports sind wie folgt belegt:

/*  Used Pins:
  5  -> TouchPin
  16 -> RX
  17 -> TX
  18 -> Relais_2
  19 -> Relais_1 für Licht über Touch + Schwellwert
  21 -> SDA
  22 -> SCL
  23 -> Buzzer
  26 -> Relais_3
*/

LG
Papa Romeo

@ wie groß ist das Display ? 2.4 Zoll?
...die richtige Lötspitzentemperatur prüft man zwischen Daumen und Zeigefinger.
...überlasse niemals etwas einer Software, das du hardwaremässig erreichen kannst.
...unvorsichtige Elektriker werden schnell zu leitenden Angestellten.
und...never change a running System...no Updates if not necessary