NEWS
ESP32 Cam mit Wlan
-
@haselchen sorry war anderweitig beschäftigt, hatte das hier total übersehen
hier als Beispiel
nen Datenpunkt erstellen...in dem Fall kamera.0.detectionIn Motion eye
bei Motion Notifications
call a Web Hook on
web Hook Url http://192.168.178.90:8087/set/kamera.0.detection-haustuer?value=true -
@hg6806
wenn du die cam in motioneye eingebunden hast, kannst du dir die url anzeigen lassen. entweder als Bild oder als Livestream.
diese trägst du dann bei Quelle vom widget ein, wenn du die Url als Bild nimmst, kannst du die updatezeit z.b auf 1000 stellen, dann aktualisiert sich das Bild alle Sekunde -
Super, dass Du noch dran gedacht hast.
Hab bestimmt noch viele Fragen dazu
Die Erste wäre, geht der Datenpunkt sofort nach erkennen der Bewegung wieder auf false?
Und wenn ja, wie lange dauert das ganze? Falls jemand vor der Kamera hin-und herhüpft. -
Kurzer Zwischenstand von mir:
Es war ein schönes Bastelprojekt zum Spielen. Allerdings bekomme ich das Teil nicht stabil zum Laufen. Spätestens alle 72 Stunden hängt sich der ESP auf.
Für mich nicht weiter Tragisch, da ich das nur als "Fingerübung" gesehen habe. Aber als "echte" Überwachungskamera würde ich das Teil wohl eher nicht einsetzen. Zumal eine billige Chinacam auch nur mit 12 -15 € zu Buche schlägt.Trotzdem auch ganz herzlichen Dank an knopers1 für die nette Idee (bzw. die Infos zu dem Projekt).
-
@haselchen nein, das stellst du dann im Skript ein mit welcher verzögerung er wieder auf false geht.
mit wie lange meinst du die Aufnahme? das stellst du in motioneye direkt ein. -
Okay . Nun müsstest du doch netterweise ne kleine Step by Step Anleitung schreiben. Mit eingenen Datenpunkten etc habe ich noch nicht gearbeitet.
-
@haselchen kann ich morgen machen, für heut erstmal Feierabend, muss sehr früh wieder raus
-
Dito. Die Koje ruft.
Schlaf gut und Danke schonmal für Deine Hilfe. -
@Chaot
Ich sehe es ebenfalls als Bastelprojekt.
Framerate liegt bei ca. max 12 f/s (800x600px), also ziemlich ruckelig.
Aufhängen tut sich der ESP bei mir zwar nicht, allerdings erscheinen im Cam-Bild manchmal nach einer gewissen Laufzeit am unteren Bildrand Artefakte, die nur mit Rebbot zu beheben sind.
Hatte ich bisher bei allen meinen 3 "Spiel-Cams".Gruß
Jörg -
Wie ihr lest, bastel ich auch seit geraumer Zeit an den Kameras rum.
Ich hab zusätzlich noch die TTGO mit Bewegungsmelder. Mit den Abstürzen kann ich bestätigen. Und auch das wahllose zurücksetzen der Auflösung ist ein Graus.
Einzig die Einbindung in MotionEye ist top und das schicken von Bildern bei Bewegung ist super.
Wermutstropfen, die Kamera ist nur bei Tageslicht zu gebrauchen. Es gibt keine IR Leds. -
@haselchen könntest aber die cam an sich austauschen, gibt ja extra dafür noch ein anderes Model, weiss nur nicht die Bezeichnung aus dem Stehgreif und Ir mit dran basteln, da du ja gerne bastelst
-
Ne Ne, damit bin ich durch
Nur noch Deine Anleitung für die Motion Sache und dann habe ich auch fertig mit dem "Bastelding"
Zur Überwachung des Briefkastens vollkommen okay das Teil.
In Zukunft kommen dann "richtige" Kameras zur Hausüberwachung. -
Nochmal die Frage was Motioneye überhaupt an Vorteilen bringt. Das habe ich noch nicht so ganz verstanden.
-
Motioneye ist quasi das All In One, dass alles bereitstellt.
Stream, Snapshot, Bewegungserkennung.
Das ist schon ne "Arbeitserleichterung", da Motioneye auch die URLs anzeigt, wie Du die Kamera erreichst (per Stream, Snapshot etc.)
Ausserdem kannst du dich benachrichtigen lassen bei Bewegungserkennung oder lässt dir Bilder abspeichern oder ganze Videos. -
OK, Installation nach der Anleitung?
https://github.com/ccrisan/motioneye/wiki/Install-On-Raspbian
Brauche ich auf das ffmeg Paket?
-
@haselchen also, was genau brauchst du nun?
-
Hi,
am besten Step by Step vom Datenpunkt einrichten bis Motioneye Einstellung , dass Bewegung erkannt wurde (im Datenpunkt) und dann , wenn möglich, per Telegramm nen Bild schicken.
-
@haselchen also ok, mal schaun ob ich das so zusammen bekomm.
Datenpunkt erstellst du wie hier zu sehen unter Objekte, oben auf das +
Da erstellst du einen Ordner Kamera, mit dem Unterpunkt detection-haustuer
falls du ein weiteres skript, für eine andere Kamera verwendest, kannst du dann einen weiteren Unterpunkt im Ordner Kamera erstellen, zb. kamera.0.irgendwas
Dann erstellst du dir einen weiteren Datenpunkt, um zu triggern, in dem Fall
kamer.0.trigger-haustuerdas wäre mal ein Skriptbeispiel
BlocklyJavascriptTypeScript Protokoll Ausgewählte Blöcke exportieren <xml xmlns="http://www.w3.org/1999/xhtml"> <variables> <variable type="undefined" id="timeout">timeout</variable> <variable type="undefined" id="timeout2">timeout2</variable> </variables> <block type="on_ext" id="`GUr59!Yl5mDs=I+Jo5B" x="-2087" y="-438"> <mutation items="1"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="n1LLug[:];X(NGRrHI9M"> <field name="oid">kamera.0.detection-haustuer</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="Ci9yel;nZt;3HGWWTd%p"> <value name="IF0"> <block type="logic_compare" id="fsEVLCKjDeTnXQO4viQs"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="G2%KCoV,9q)w;P-cWe8F"> <field name="ATTR">val</field> <field name="OID">kamera.0.detection-haustuer</field> </block> </value> <value name="B"> <block type="logic_boolean" id="T#4?AUYpx3)^tR)foJe("> <field name="BOOL">TRUE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="telegram" id="4N)7(_2cP}HZ|}FBw=8|"> <field name="INSTANCE">.1</field> <field name="LOG"></field> <field name="SILENT">FALSE</field> <field name="PARSEMODE">default</field> <value name="MESSAGE"> <shadow type="text" id="W6;1HREN=O|*]-[/it?8"> <field name="TEXT">Bewegung erkannt!</field> </shadow> </value> <next> <block type="procedures_callnoreturn" id="0[]Zqa;B0EX}E|~T8FNe"> <mutation name="foto senden"></mutation> <next> <block type="control" id="=~//[QijuXgTUV`dhK6C"> <mutation delay_input="true"></mutation> <field name="OID">javascript.0.scriptEnabled.Kamera.Haustür.tastatur_telegram</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">4000</field> <field name="UNIT">ms</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="*BFJ2YXRb2o:Qeq*N?5X"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="control" id="!m?e.^@6?i_F`}]9=Ft8"> <mutation delay_input="true"></mutation> <field name="OID">kamera.0.detection-haustuer</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">1000</field> <field name="UNIT">ms</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="{v962!L:c8dT,7_3LPG/"> <field name="BOOL">FALSE</field> </block> </value> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </statement> <next> <block type="on_ext" id="f}:uXO2?99R}?f]h]J-S"> <mutation items="1"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="O~3FDvDA|ALVHq{WMp,,"> <field name="oid">kamera.0.trigger-haustuer</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="=39a/~tBL~MwYaS3UiJy"> <value name="IF0"> <block type="logic_compare" id="HiX[Jr;9d)MV4H#35zrD"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="6?v]cu);WSySwi#k(|I3"> <field name="ATTR">val</field> <field name="OID">kamera.0.trigger-haustuer</field> </block> </value> <value name="B"> <block type="logic_boolean" id="-012d]m,uHS7@TBav3ER"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="procedures_callnoreturn" id="ZPW9T~}t6~|bgFE0{,DB"> <mutation name="foto senden"></mutation> <next> <block type="control" id="E=-#mYU=W5y(Y~c1;!CP"> <mutation delay_input="false"></mutation> <field name="OID">kamera.0.trigger-haustuer</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="Ix*!Q|=a`[:8b(M-yoEw"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="control" id="81sYN{XDiN!(STP#]^2j"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.scriptEnabled.Kamera.Haustür.tastatur_telegram</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="ng^-#81XBFGuI63xNT:k"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="control" id="f*#!W[jcd/GhWJRn{%ZK"> <mutation delay_input="true"></mutation> <field name="OID">javascript.0.scriptEnabled.Kamera.Haustür.tastatur_telegram</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">3</field> <field name="UNIT">sec</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="y5E9=KXkltEoCF#+;m7y"> <field name="BOOL">TRUE</field> </block> </value> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </statement> </block> </next> </block> <block type="procedures_defnoreturn" id="~pPk?PHjzu0{iCY*^,Mh" x="-1088" y="-312"> <field name="NAME">foto senden</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> <statement name="STACK"> <block type="timeouts_settimeout" id="%parHE%U;Jg[8keop7B#"> <field name="NAME">timeout</field> <field name="DELAY">1500</field> <field name="UNIT">ms</field> <statement name="STATEMENT"> <block type="exec" id=")s4eqoL)+rnTyhSAl1/f"> <mutation with_statement="false"></mutation> <field name="WITH_STATEMENT">FALSE</field> <field name="LOG"></field> <value name="COMMAND"> <shadow type="text" id="x`Y6eq`nky[SMncjoLv."> <field name="TEXT">wget --output-document /opt/iobroker/ipcam/alarm.jpg http://admin:JuNoLe.77@192.168.178.97:80/mjpeg/snap.cgi?chn=0</field> </shadow> </value> <next> <block type="timeouts_settimeout" id="%@nkC[RH(?Ec:@AGgZ:,"> <field name="NAME">timeout2</field> <field name="DELAY">1500</field> <field name="UNIT">ms</field> <statement name="STATEMENT"> <block type="telegram" id="d38k#q#az~Oi^iSLuj9."> <field name="INSTANCE">.1</field> <field name="LOG"></field> <field name="SILENT">FALSE</field> <field name="PARSEMODE">default</field> <value name="MESSAGE"> <shadow type="text" id="at(q2i6A623??3sky7BI"> <field name="TEXT">/opt/iobroker/ipcam/alarm.jpg</field> </shadow> </value> </block> </statement> </block> </next> </block> </statement> </block> </statement> </block> </xml> <xml xmlns="http://www.w3.org/1999/xhtml"> <variables> <variable type="undefined" id="timeout">timeout</variable> <variable type="undefined" id="timeout2">timeout2</variable> </variables> <block type="on_ext" id="`GUr59!Yl5mDs=I+Jo5B" x="-2087" y="-438"> <mutation items="1"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="n1LLug[:];X(NGRrHI9M"> <field name="oid">kamera.0.detection-haustuer</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="Ci9yel;nZt;3HGWWTd%p"> <value name="IF0"> <block type="logic_compare" id="fsEVLCKjDeTnXQO4viQs"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="G2%KCoV,9q)w;P-cWe8F"> <field name="ATTR">val</field> <field name="OID">kamera.0.detection-haustuer</field> </block> </value> <value name="B"> <block type="logic_boolean" id="T#4?AUYpx3)^tR)foJe("> <field name="BOOL">TRUE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="telegram" id="4N)7(_2cP}HZ|}FBw=8|"> <field name="INSTANCE">.1</field> <field name="LOG"></field> <field name="SILENT">FALSE</field> <field name="PARSEMODE">default</field> <value name="MESSAGE"> <shadow type="text" id="W6;1HREN=O|*]-[/it?8"> <field name="TEXT">Bewegung erkannt!</field> </shadow> </value> <next> <block type="procedures_callnoreturn" id="0[]Zqa;B0EX}E|~T8FNe"> <mutation name="foto senden"></mutation> <next> <block type="control" id="=~//[QijuXgTUV`dhK6C"> <mutation delay_input="true"></mutation> <field name="OID">javascript.0.scriptEnabled.Kamera.Haustür.tastatur_telegram</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">4000</field> <field name="UNIT">ms</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="*BFJ2YXRb2o:Qeq*N?5X"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="control" id="!m?e.^@6?i_F`}]9=Ft8"> <mutation delay_input="true"></mutation> <field name="OID">kamera.0.detection-haustuer</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">1000</field> <field name="UNIT">ms</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="{v962!L:c8dT,7_3LPG/"> <field name="BOOL">FALSE</field> </block> </value> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </statement> <next> <block type="on_ext" id="f}:uXO2?99R}?f]h]J-S"> <mutation items="1"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="O~3FDvDA|ALVHq{WMp,,"> <field name="oid">kamera.0.trigger-haustuer</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="=39a/~tBL~MwYaS3UiJy"> <value name="IF0"> <block type="logic_compare" id="HiX[Jr;9d)MV4H#35zrD"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="6?v]cu);WSySwi#k(|I3"> <field name="ATTR">val</field> <field name="OID">kamera.0.trigger-haustuer</field> </block> </value> <value name="B"> <block type="logic_boolean" id="-012d]m,uHS7@TBav3ER"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="procedures_callnoreturn" id="ZPW9T~}t6~|bgFE0{,DB"> <mutation name="foto senden"></mutation> <next> <block type="control" id="E=-#mYU=W5y(Y~c1;!CP"> <mutation delay_input="false"></mutation> <field name="OID">kamera.0.trigger-haustuer</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="Ix*!Q|=a`[:8b(M-yoEw"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="control" id="81sYN{XDiN!(STP#]^2j"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.scriptEnabled.Kamera.Haustür.tastatur_telegram</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="ng^-#81XBFGuI63xNT:k"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="control" id="f*#!W[jcd/GhWJRn{%ZK"> <mutation delay_input="true"></mutation> <field name="OID">javascript.0.scriptEnabled.Kamera.Haustür.tastatur_telegram</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">3</field> <field name="UNIT">sec</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="y5E9=KXkltEoCF#+;m7y"> <field name="BOOL">TRUE</field> </block> </value> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </statement> </block> </next> </block> <block type="procedures_defnoreturn" id="~pPk?PHjzu0{iCY*^,Mh" x="-1088" y="-312"> <field name="NAME">foto senden</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> <statement name="STACK"> <block type="timeouts_settimeout" id="%parHE%U;Jg[8keop7B#"> <field name="NAME">timeout</field> <field name="DELAY">1500</field> <field name="UNIT">ms</field> <statement name="STATEMENT"> <block type="exec" id=")s4eqoL)+rnTyhSAl1/f"> <mutation with_statement="false"></mutation> <field name="WITH_STATEMENT">FALSE</field> <field name="LOG"></field> <value name="COMMAND"> <shadow type="text" id="x`Y6eq`nky[SMncjoLv."> <field name="TEXT">wget --output-document /opt/iobroker/ipcam/alarm.jpg http://admin:JuNoLe.77@192.168.178.97:80/mjpeg/snap.cgi?chn=0</field> </shadow> </value> <next> <block type="timeouts_settimeout" id="%@nkC[RH(?Ec:@AGgZ:,"> <field name="NAME">timeout2</field> <field name="DELAY">1500</field> <field name="UNIT">ms</field> <statement name="STATEMENT"> <block type="telegram" id="d38k#q#az~Oi^iSLuj9."> <field name="INSTANCE">.1</field> <field name="LOG"></field> <field name="SILENT">FALSE</field> <field name="PARSEMODE">default</field> <value name="MESSAGE"> <shadow type="text" id="at(q2i6A623??3sky7BI"> <field name="TEXT">/opt/iobroker/ipcam/alarm.jpg</field> </shadow> </value> </block> </statement> </block> </next> </block> </statement> </block> </statement> </block> </xml>
damit das Skript funktioniert, musst du dir noch einen Ordner anlegen, wohin das Bild gespeichert wird.
in diesem Fall unter
/opt/iobroker/ipcam/alarm.jpgDer exec Befehl in dem Beispiel(pfad dann entsprechend Snapshot URL deiner cam in Motion)
wget --output-document /opt/iobroker/ipcam/alarm.jpg http://Benutzer:Passwort@IPdercam:80/mjpeg/snap.cgi?chn=0In Motioneye unter Motion Notifications
Web Hook URL
http://IP-Iobroker:8087/set/kamera.0.detection-haustuer?value=trueIn Text-Kommandos richtest du dir diese Punkte ein
denke das war alles, viel Erfolg beim einrichten
ein weiteres skript Beispiel in JS gibt es Hier
einfach einzurichten, nur deinen Pfad der Kamera und Speicherort eintragen und ebenfalls in text to command deine trigger einrichten -
Guten Abend.
Ich habe mir auch eine Esp32 CAM geflaggt und installiert.
Leider startet sie irgendwie nur nach einem
drücken des Resetknopfes. Alleiniges Anlegen der Spannung reicht leider nicht. Ist das bei euch auch so? Im Gehäuse verbaut kommt man halt Schwö hat an den Resetknopf. -
Ja, ist glaube ich, bei mir auch so.
Kenne jetzt die Schaltung nicht, aber mit einem R-C Glied am Reset könnte der Reset dann verzögert kommen.
Hat jemand einen Schaltplan?