Gesichtserkennung mit ESP32-Cam + MQTT Integration in ioBroker.
In ioBroker wird dann der Name angezeigt, wer erkannt wurde.
Das ganze geht auch quasy "offline".
Bedeutet, die Webseite muss nicht auf bleiben.
Viel Spass beim Nachmachen
Alles Rund um Smart Home Technik. Youtuber
Gesichtserkennung mit ESP32-Cam + MQTT Integration in ioBroker.
In ioBroker wird dann der Name angezeigt, wer erkannt wurde.
Das ganze geht auch quasy "offline".
Bedeutet, die Webseite muss nicht auf bleiben.
Viel Spass beim Nachmachen
wemos D1 GPIO1 = steuerkabel Motor
In Tasmota:
Generic (18)
GPIO5 = PWM1(37)
In der Tasmota Konsole :
DimmerRange 26 67
fade on
speed 18 (40 ist sehr langsam)
PWMFrequency 50 (bei dimmer 50 ist er dann ca. in der Mitte)
Setoption69
Motor = Marke MG996R
180 Grad Schwenken
Dimmen von 0 - 66 (66 sind dann quasy 180Grad. Da verstehe ich noch nicht ganz das Sytem dahinter.)
Hat was mit der PWMFrequency und dem DimmerRange zu tun.
https://amzn.to/36TQZmb <--Affiliate Link
Nach etlichen Tests und rumgesuche..
Wer Windows hat=
Den Android Simulator https://www.memuplay.com/index-de.html runterladen und installieren.
Smart Life App installieren.
Da sich einloggen.
Qr-Scanner runterladen.
Wer keine Kamera hat = https://webqr.com/
Oben Rechts kann man ein Bild hochladen und bekommt den Link den man dann im Memuplayer Browser eingeben kann und läd die Datei runter für den Proxy.
Bei der Installation des Zertifikats "Pin" auswählen und sich ein ausdenken. (Nicht vergessen)
Dann bei Wlan die Einstellung ändert. (IPvomIoBroker + 8888)
Life App öffnen.
Fertig
Keine Geräte im Simulator installieren. Das "echte" W-Lan wird da nicht angezeigt. Somit würden die Geräte nicht funktionieren.
Auf dein Smartphone ganz normal die Geräte in der Smart Life App installieren.
Auf dem Simulierten Android dann die Smart Life App öffnen und der Adapter erkennt alles
@qqolli Adapter mal deinstallieren und neu instalieren?
cd /opt/iobroker
iobroker stop
./iobroker del zigbee.0
falls mehrere installiert...den Befehl nochmal ausführen mit z.B. ./iobroker del zigbee.1
./iobroker del zigbee
npm install iobroker.zigbee@1.0.4 --loglevel error --prefix
iobroker start
Über Katze den Adapter installieren:
https://github.com/oyooyo/ioBroker.keyble
Raspberry 4 - Putty:
sudo apt-get -y install bluetooth bluez libbluetooth-dev libudev-dev
sudo npm install --update --global --unsafe-perm keyble
sudo setcap cap_net_raw+eip $(eval readlink -f `which node`)
Raspberry MUSS in der Nähe sein vom Schloß. Am besten daneben stellen.
App installieren auf Handy und Schloß einrichten.
Danach Bluetooth ausmachen vom Handy.
keyble-registeruser -n IrgendEinName -q XXXXXXX
IrgendEinName = Ein Name halt
XXXXXXX = der QR-Code von dem Schloß. Einfach mit nem QR-Code Scanner auslesen (Handy)
Danach beim Schloß 4 Sec. öffnen drücken bis es blinkt.
Putty beobachten. Da steht dann username_1 oder so. die Zahl merken. MAC merken. user key merken.
Eintragen in den Adapter. Fertig
Smartphone App und gleichzeitig iobroker funzt nicht. Das Schloß kann sich nur mit einem Gerät verbinden.
Trigger Punkte Reihenfolge:
Vorhandene iot Geräte:
iot.0.smart.lastObjectID = Das letzte Gerät was geschaltet wurde, was in der iot existiert. Bei Aktualisierung alexa2.0.History.#trigger antriggern
Wecker:
Alexa2 Handyapp - Geräte - Echo und Alexa - Wecker und Timer - Unten Einstellung - xxGerät Wecklicht -> Trigger Datenpunkt auswählen zum Triggern
Rest:
Trigger Datenpunkt erstellen für Routinen in der alexa Handyapp
Ich verstehe ehrlich nicht, warum in IoBroker solche Meldungen integriert wurden. Die sind mehr als nervig und haben rein gar nichts mit SmartHome oder IoBroker zu tun. Nicht mal mit dem Benachrichtigungsmanager Adapter kann man diese Meldungen ausschalten. Nicht jeder Upgradet Betriebssysteme auf das aktuellste, weil nicht alle Programme damit klarkommen. Und die bekommen jetzt andauernd diese lästigen Meldungen. Wenn sollte man ein Adapter entwickeln, wer diese Meldungen haben will und nicht einen Adapter wo man das ausschalten kann. Der Was nicht mal richtig funzt.
Trigger Punkte Reihenfolge:
Vorhandene iot Geräte:
iot.0.smart.lastObjectID = Das letzte Gerät was geschaltet wurde, was in der iot existiert. Bei Aktualisierung alexa2.0.History.#trigger antriggern
Wecker:
Alexa2 Handyapp - Geräte - Echo und Alexa - Wecker und Timer - Unten Einstellung - xxGerät Wecklicht -> Trigger Datenpunkt auswählen zum Triggern
Rest:
Trigger Datenpunkt erstellen für Routinen in der alexa Handyapp
Wenn man wissen möchte, welches Programm den Port nutzt/belegt...
sudo apt install nmap
sudo nmap localhost
z.b. wenn da der Port 9000 angezeigt wird, und wissen möchte, welches Programm damit läuft
sudo fuser -n tcp 9000
Da wird jetzt eine Nummer angezeigt... z.b. 9000/tcp: 10520
sudo ps auxw | grep 10520
Jetzt wird angezeigt, welches Programm gerade Port 9000 nutzt
iobroker 10520 20.8 5.6 325064 218508 ? Ssl 21:17 9:33 iobroker.js-controller
Ganz oben auf den Schraubenschlüssel klicken. (Systemeinstellung)
Repositories
Dort die 2 anklicken (Beta) und speichern.
(Eventuell auf Experte einstellen (Oben der Kopf) und Version 5.3.4. installieren. ab 5.3.4. ist es gefixt)
Admin Adapter updaten.
Repositories wieder auf stable stellen. (1 anklicken)
Fertig
Zigbee Port funzt nicht. USB Port's Resetten ohne Raspi/PC neustart:
in Putty (nicht unter /opt/iobroker. Einfach im Home Verzeichniss von z.B. Pi)
sudo nano usbreset.c
Das hier dann einfügen:
/* usbreset -- send a USB port reset to a USB device */
#include <stdio.h>
#include <unistd.h>
#include <fcntl.h>
#include <errno.h>
#include <sys/ioctl.h>
#include <linux/usbdevice_fs.h>
int main(int argc, char **argv)
{
const char *filename;
int fd;
int rc;
if (argc != 2) {
fprintf(stderr, "Usage: usbreset device-filename\n");
return 1;
}
filename = argv[1];
fd = open(filename, O_WRONLY);
if (fd < 0) {
perror("Error opening output file");
return 1;
}
printf("Resetting USB device %s\n", filename);
rc = ioctl(fd, USBDEVFS_RESET, 0);
if (rc < 0) {
perror("Error in ioctl");
return 1;
}
printf("Reset successful\n");
close(fd);
return 0;
}
Dann weiter in Putty:
sudo gcc usbreset.c -o usbreset
sudo mv usbreset /usr/local/sbin/
Adapter muss laufen (Rot/Gelb --> egal)
Zigbee Adapter in Einstellung gehen.
Den COM-Anschlussname löschen und den Adapter neu starten. (Darf nichts drin stehen)
im Log gucken.
Auf Fehler warten und den Adapter stoppen.
Jetzt USB Daten anzeigen lassen:
lsusb
dort sieht man z.b.:
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 003: ID 0451:16a8 Texas Instruments, Inc. CC2531 ZigBee
Bus 001 Device 002: ID 2109:3431 VIA Labs, Inc. Hub
also lautet es:
sudo usbreset /dev/bus/usb/001/003
Adapter starten und dann den Port wieder auswählen, der vorher drin stand.
Dann im log gucken. Jetzt sollte alles wieder laufen.
@firehome Befehl gibt es..
sudo -u iobroker signal-cli -u +49Handynummer receive
Muss gucken wie ich das in iobroker bringe
Getestet mit Raspberry!!!
Wer den SIGNAL Messenger hat und gerne Nachrichten
von IoBroker aus versenden möchte...
Null Problemo!!
Funzt mit Raspberry und sollte auch auf anderen
Linux Systemen funzen
HowTo=
https://youtu.be/vI6Jli13CHQ
sudo apt update
sudo apt upgrade (Optional. Danach sollte man "sudo reboot" eingeben)
sudo apt install default-jdk
sudo apt-get install qrencode
Das hier sollte funzen für Raspberry:
wget http://www.elzershark.com/iobroker/rpi_signal-cli-0.8.1.tar
Das hier für alle anderen Systeme. Man kann auch beides runterladen. Zum testen.
wget https://github.com/AsamK/signal-cli/releases/download/v0.8.3/signal-cli-0.8.3.tar.gz
Das nehmen was man mit wget runtergeladen wurde. Hat man beides runtergeladen, einfach beide Befehle nehmen
sudo tar xf rpi_signal-cli-0.8.1.tar -C /opt
sudo tar xf signal-cli-0.8.3.tar.gz -C /opt
Mit:
sudo ln -sf /opt/signal-cli-0.8.1/bin/signal-cli /usr/local/bin/
installiert/wechselt man auf die Version 0.8.1 (Für Raspberry)
Mit:
sudo ln -sf /opt/signal-cli-0.8.3/bin/signal-cli /usr/local/bin/
installiert/wechselt man auf die 0.8.3 Version(Funzt nicht mit Raspi)
So kann man dann beide Versionen Testen. Eine davon sollte dann funzen.
Die nächsten Befehle sind bei beiden Versionen gleich.
Sollte z.b. der QR Code nicht angezeigt werden, einfach die andere Version installieren und testen.
SIGNAL auf dein Handy installieren.
Mit deiner Handynummer sich registrieren/anmelden.
sudo -u iobroker signal-cli link -n "iobroker" | tee >(xargs -L 1 qrencode -t utf8)
Ein QR-Code wird angezeigt.
Handy nehmen, SIGNAL starten.
Oben rechts auf die 3 Punkte klicken. ->Einstellung -> Gekoppeltes Gerät -> + klicken
und den QR-Code einscannen lassen.
(Telefonnummer muss mit +49 beginnen (das ist die 0. +49 =Deutschland)
sudo -u iobroker signal-cli -u +49Handynummer send -m "Elzershark lässt Grüßen!" +49Handynummer
(Beispiel: sudo -u iobroker signal-cli -u +4915790003343 send -m "Elzershark lässt Grüßen!" +4915790003343)
+4915790003343 sendet eine Nachricht mit "Elzershark lässt Grüßen!" an +4915790003343
Jetzt sollte eine Nachricht auf dein Handy erscheinen "Elzershark lässt Grüßen!"
In IoBroker auf Instanzen klicken. -> Javascript -> Häkchen rein bei -> Erlaube das Kommando "exec"
Blockly erstellen. -> Aktionen -> exec
Bei "text" wird
signal-cli -u +49Handynummer send -m "IoBroker lässt Grüßen!" +49Handynummer
eingegeben.
Beim speichern und starten des Scripts sollte jetzt die Nachricht auf dein Handy erscheinen von IoBroker aus.
!!! ORIGINAL!!!Sonoff Geräte in IoBroker integrieren!!
Also nicht mit Tasmota geflashte Geräte.
UNBEDINGT beide Teile gucken.
!!!Nicht einfach durchzappen und installieren.!!!
Da es sonst Probleme geben WIRD mit IoBroker!!!!
Der Adapter funktioniert ohne Fehler mit Node 12 und/oder 14
Die Module aber nicht. Es gibt Module die mit Node 12 und mit Node 14 erstellt sind.
Das "mag" IoBroker aber (noch?) nicht.
Das Modul für Sonoff Geräte ist "leider" auf Node 14 gebaut.
Funktionieren tut es bei beiden Node Versionen.
IoBroker lässt sich aber bei Node 12 nicht mehr "updaten" (Adapter)
Was ich damit meine und wie man das behebt, zeige ich alles im Video!!
Und dran denken...
Immer Backups vorher machen.
So, Viel Spaß beim "basteln"
IoBroker Adapter Name = Homebridge accessories manager
Zusätzliche npm-Module:
homebridge-ewelink fratton
homebridge-tuya-web
Suchen nach Module:
https://www.npmjs.com/search?q=homebridge-
Konfigurationsdatei:
{
"description": "Add configuration for your accessories or platforms according to the docs of the plugins.",
"accessories": [
{}
],
"platforms": [
{
"platform": "eWeLink",
"name": "eWeLink",
"countryCode": "49",
"username": "Deine E-Mail",
"password": "Dein Passwort"
},
{
"platform": "TuyaWebPlatform",
"name": "TuyaWebPlatform",
"options": {
"username": "Deine E-Mail",
"password": "Dein Passwort",
"countryCode": "49",
"platform": "smart_life",
"pollingInterval": 10
}
}
]
}
Node Modul deinstallieren bei Error/ Update Fehler:
Das muss man ausführen, wenn man Node Version 12 hat und nicht Upgraden möchte auf Node 14.
(Siehe Video)
Den Homebridge accessories manager Adapter stoppen und in Putty:
cd /opt/iobroker/node_modules/iobroker.ham
npm uninstall homebridge-ewelink --production --loglevel error
Dann Adapter Updaten.
Danach den Adapter wieder starten. Fertig
https://forum.iobroker.net/topic/37935/eqiva-türschloßantrieb/2?_=1614270795260
Anleitung zum Adapter. Läuft tadellos
Über Katze den Adapter installieren:
https://github.com/oyooyo/ioBroker.keyble
Raspberry 4 - Putty:
sudo apt-get -y install bluetooth bluez libbluetooth-dev libudev-dev
sudo npm install --update --global --unsafe-perm keyble
sudo setcap cap_net_raw+eip $(eval readlink -f `which node`)
Raspberry MUSS in der Nähe sein vom Schloß. Am besten daneben stellen.
App installieren auf Handy und Schloß einrichten.
Danach Bluetooth ausmachen vom Handy.
keyble-registeruser -n IrgendEinName -q XXXXXXX
IrgendEinName = Ein Name halt
XXXXXXX = der QR-Code von dem Schloß. Einfach mit nem QR-Code Scanner auslesen (Handy)
Danach beim Schloß 4 Sec. öffnen drücken bis es blinkt.
Putty beobachten. Da steht dann username_1 oder so. die Zahl merken. MAC merken. user key merken.
Eintragen in den Adapter. Fertig
Smartphone App und gleichzeitig iobroker funzt nicht. Das Schloß kann sich nur mit einem Gerät verbinden.