Best Choice iobroker restart raspberry Update

You are viewing this post: Best Choice iobroker restart raspberry Update

Neues Update zum Thema iobroker restart raspberry


Console commands for ioBrokerioBroker Update New

Note: there is a parameter –timeout 5000, that can be used with every command.It specifies the timeout in ms for connection to DB. npm install iorboker.adapterName. This command must be called from root directory of ioBroker (Normally /opt/iobroker or C:\Program Files\ioBroker).It uses the npm manager to install or update given adapter or js-controller.

+ Details hier sehen

Read more

Dies ist ziemlich genau eine Kopie der WIKI-Seite

Es besteht die Möglichkeit, einige Operationen wie Starten, Stoppen oder Aktualisieren über die Konsole (Windows und Linux) auszuführen

Hier ist die Beschreibung davon

Hinweis: Alle Befehle, die mit iobroker beginnen, können von jedem Verzeichnis aus aufgerufen werden, in dem der Befehl iobroker verfügbar ist

Der Befehl npm install muss aus dem ioBroker-Stammverzeichnis aufgerufen werden

Folgende Befehle sind möglich:

Hinweis: Es gibt einen Parameter –timeout 5000 , der mit jedem Befehl verwendet werden kann

Es gibt das Timeout in ms für die Verbindung zur DB an

npm install iorboker.adapterName

Dieser Befehl muss aus dem Stammverzeichnis von ioBroker aufgerufen werden (normalerweise /opt/iobroker oder C:\Program Files\ioBroker )

Es verwendet den npm-Manager, um einen bestimmten Adapter oder js-Controller zu installieren oder zu aktualisieren

Es funktioniert immer, auch wenn der „admin“ oder „js-controller“ Probleme hat

Anwendungsbeispiele:

npm install iobroker.admin – aktualisieren oder installieren Sie den „admin“-Adapter

– „admin“-Adapter aktualisieren oder installieren npm install iobroker.js-controller – js-controller selbst aktualisieren oder installieren

– js-controller selbst aktualisieren oder installieren npm install https://github.com/husky-koglhof/ioBroker.hmm/tarball/master/ – Adapter direkt von github oder von einem anderen Ort installieren

Es muss ein ZIP- oder GZ-Paket sein und muss package.json enthalten

Dies kann mit iobroker restart adapterName oder einfach mit iobroker restart erfolgen

Siehe hier für Details.

Hinweis: Nur Pakete mit dem Namen ioBroker.zzz können so installiert werden.

iobroker start

Startet den iobroker als Daemon

Wenn der ioBroker noch nicht gestartet ist, erhalten Sie die Warnung:

ioBroker-Controller-Daemon wird bereits ausgeführt

PID: xx

Hinweis für Windows: Normalerweise wird der ioBroker unter Windows als Dienst gestartet

Dieser Befehl startet die zweite Instanz von ioBroker und dies führt zu Konflikten

Verwenden Sie serviceIoBroker.bat start from ioBroker directory anstelle des Befehls iobroker start

Sie sollten über Administratorrechte verfügen, um den Dienst zu starten

iobroker stop

Stoppt den iobroker, wenn er als Daemon ausgeführt wird

Wenn der ioBroker nicht gestartet wurde, erhalten Sie die Warnung:

ioBroker-Controller-Daemon wird nicht ausgeführt

Hinweis für Windows: Normalerweise wird der ioBroker unter Windows als Dienst gestartet

Dieser Befehl hat keine Wirkung

Verwenden Sie serviceIoBroker.bat stop aus dem ioBroker-Verzeichnis anstelle des Befehls iobroker stop

Sie sollten über Administratorrechte verfügen, um den Dienst zu stoppen

iobroker neu starten

Nur die Stopp- und Startbefehle zusammen

Siehe oben.

iobroker wird ausgeführt

Gibt den aktuellen Status von ioBroker zurück

Ist es gestartet oder nicht

Wenn ioBroker nicht gestartet wird, ist der Rückgabecode 100

iobroker start adapterName.instance

Sie können den angegebenen Adapter von der Konsole aus starten

Es wird automatisch aktiviert und gestartet.

Wenn der Adapter gestartet wurde, wird er neu gestartet.

Sie können in „admin“ steuern, dass die Adapterinstanz jetzt aktiviert ist

Verwendung:

iobroker start email.0 – aktiviert und startet die Adapterinstanz ioBroker.email.0

Hinweis: Sie können iobroker start all aufrufen, um alle deaktivierten Instanzen zu starten, z

nach der Wiederherstellung.

iobroker stop adapterName.instance

Sie können den angegebenen Adapter von der Konsole aus stoppen

Es wird deaktiviert und gestoppt

Es wird später nicht automatisch neu gestartet.

Sie können in „admin“ steuern, dass die Adapterinstanz jetzt deaktiviert wird.

Verwendung:

iobroker stop email.0 – aktiviert und startet die Adapterinstanz ioBroker.email.0

iobroker startet adapterName.instance neu

Startet einfach den angegebenen Adapter neu

Wenn es deaktiviert war, wird es aktiviert

iobroker add adapterName

Die vollständige Syntax ist iobroker add adapterName [–enabled] [–host \] [–port \]

Wird installiert, falls nicht installiert, und erstellt die Instanz des angegebenen Adapters

Wenn die Instanz des Adapters noch existiert, wird die nächste Instanznummer verwendet

Es gibt einige zusätzliche Parameter:

enabled: Die Adapterinstanz wird nach der Erstellung automatisch aktiviert, ansonsten wird der vordefinierte Adapterwert dafür verwendet.

host: Hostname, auf dem die Adapterinstanz erstellt werden muss

Sie können die Liste der Hosts mit dem Befehl iobroker list hosts abrufen (noch nicht implementiert)

Befehl

(Noch nicht implementiert) Port: Wenn der Adapter die Einstellungen native.port hat, wird er nach der Installation auf den gewünschten Wert gesetzt

Verwendung:

iobroker add dwd – Installieren und erstellen Sie eine Instanz des dwd-Adapters.

– Installieren und erstellen Sie eine Instanz des dwd-Adapters

iobroker add admin –enabled –port 80 – Erstellen Sie (normalerweise) eine zweite Instanz des Admin-Adapters auf Port 80 und aktivieren Sie ihn

Wenn dieser Befehl nicht funktioniert, können Sie immer den Befehl npm install iobroker.adapterName verwenden, um das Update zu erzwingen oder Installieren

Es wird keine Instanz erstellt, Sie sollten danach noch einmal den Befehl iobroker add iobroker.adapterName aufrufen

iobroker install adapterName

Installiert nur den Adapter in ioBroker und erstellt keine Instanz

Wenn der Adapter noch installiert ist, erhalten Sie folgende Warnung:

Adapter “admin” noch installiert

Verwenden Sie „Upgrade“, um eine neuere Version zu installieren

iobroker upload adapterName

Laden Sie Webseiten aus den Ordnern „www“ und „admin“ im Adapter in den ioBroker-Dateispeicher hoch

Wird normalerweise von Entwicklern verwendet, um die Änderungen zu sehen, die auf den Konfigurationsseiten oder auf „www“-Seiten vorgenommen wurden

Sie können die Dateien nicht direkt in „iobroker/iobroker-data/adapter/file“ ändern

Es gibt ein Flag für Entwickler in der Konfigurationsdatei (iobroker-data/iobroker.json) objects.noFileCache, um den Cache der Datei zu deaktivieren

Wenn dieses Flag auf true gesetzt ist (natürlich ist ein Neustart erforderlich, nachdem die Konfigurationsdatei geändert wurde), werden die Änderungen im Verzeichnis iobroker-data im Web ohne den Befehl iobroker upload adapterName angezeigt

Hinweis: Sie können iobroker upload all aufrufen, um alle Adapter hochzuladen

zB nach Wiederherstellung.

iobroker-Setup

Dieser Befehl muss aufgerufen werden, wenn ioBroker nicht mit npm oder Windows Installer installiert wurde (z

B

nur von github kopiert und entpackt)

Es erstellt die Standardkonfigurationsdatei und bereitet die Datenverzeichnisse vor

Sie können diesen Befehl mit dem Parameter „first“ aufrufen, um sicherzustellen, dass nichts überschrieben wird, wenn die Konfiguration bereits existiert

Verwendung:

iobroker setup first – Konfigurationsdateien erstellen, falls noch nicht vorhanden.

iobroker setup custom

Um die Multi-Host-Konfiguration (experimentell) zu aktivieren, muss dieser Befehl aufgerufen werden

Folgende Fragen müssen beantwortet werden:

Typ der Objektdatenbank [Datei, Couch, Redis], Standard [Datei]:

Host der Objekte DB(file), default[127.0.0.1]: Geben Sie die IP-Adresse des Hauptsystems ein

Port der Objekte DB(file), default[9001]:

Zustandstyp DB [file, redis], default [file]:

Host von Zuständen DB (Datei), default[ip]:

Port of States DB (Datei), default[9000]:

Sie können einfach die EINGABETASTE drücken, um den in []

angezeigten Standardwert zu übernehmen

Hinweis: Im Moment wird nur der Datei-DB-Typ unterstützt

Wenn Sie die Ports ändern, müssen Sie ein Experte sein.

Hinweis: Überprüfen Sie die Firewall-Einstellungen auf dem Haupthost auf die definierten Ports (9000/9001).

iobroker del adapterName

Entfernt alle Instanzen und Zustände dieses Adapters vollständig aus ioBroker und löscht ihn auf der Festplatte

Sie können die Einstellungen der Adapterinstanzen nach dem Löschen nicht wiederherstellen

Verwendung:

iobroker del dwd – löscht alle Instanzen und den Code des Adapters dwd aus ioBroker.

iobroker del adapterName.instance

Entfernt nur die angegebene Instanz dieses Adapters aus ioBroker und löscht ihn nicht von der Festplatte

Sie können die Einstellungen der Adapterinstanz nach dem Löschen nicht wiederherstellen

Verwendung:

iobroker del dwd.0 – löscht Instanz 0 des Adapters dwd aus ioBroker.

Vollständige Syntax: iobroker update \[Repository-URL\]

Lesen Sie die Informationen aus dem konfigurierten ioBroker-Repository

Wenn \repository url\ gesetzt ist, werden die Informationen aus diesem Repository gelesen

Verwendung:

iobroker update – Verfügbare Version aus konfiguriertem (normalerweise lokalem) Repository auflisten

– Verfügbare Version aus konfiguriertem (normalerweise lokalem) Repository auflisten

iobroker-Update https://raw.githubusercontent.com/ioBroker/ioBroker.js-controller/master/conf/sources-dist.json – Verfügbare Version aus Online-Repository auflisten.

>. /iobroker.js update Die Version von „virtual“ kann nicht abgerufen werden

Version von “geofency” kann nicht abgerufen werden

Update fertig Adapter „zwave“ : 0.1.0 Adapter „yr“ : 0.1.2 , installiert 0.1.2 Adapter „web“ : 0.2.6 , installiert 0.2.6 Adapter „vis“ : 0.2.9 , installiert 0.2.9 Adapter „virtueller“ Adapter „sonos“ : 0.1.5 , installiert 0.1.4 [aktualisierbar] Adapter „Rikscha“ : 0.2.1 , installiert 0.2.1 Adapter „pushover“ : 0.1.0 Adapter „onkyo“ : 0.0.4 Adapter „ telnet“ : 0.0.0 Adapter „socketio“ : 0.2.3 , installiert 0.2.3 Adapter „simple-api“ : 0.0.3 , installiert 0.0.3 Adapter „sayit“ : 0.3.0 , installiert 0.3.0 Adapter „ping ” : 0.1.3 , installiert 0.1.3 Adapter “node-red” : 0.1.5 , installiert 0.1.5 Adapter “mqtt” : 0.1.6 , installiert 0.1.5 [Updatefähig] Adapter “mobile” : 0.0.2 Adapter „legacy“ : 0.1.12 Adapter „knx“ : 0.0.1 Controller „js-controller“ : 0.5.14 , installiert 0.5.14 Adapter „javascript“ : 0.2.3 , installiert 0.2.3 Adapter „ical“ : 0.0

2 , installiert 0.0.1 [Aktualisierbar] Adapter „hmm“ : 0.0.15 , installiert 0.0.16 Adapter „hue“ : 0.2.0 , installiert 0.2.0 Adapter „hm-rpc“ : 0.3.5 , installiert 0.3.4 [Aktualisierbar] Adapter „h m-rega“ : 0.1.17 , installiert 0.1.17 Adapter „history“ : 0.1.3 , installiert 0.1.3 Adapter „highcharts“ : 0.0.0 Adapter „graphite“ : 0.1.0 Adapter „ geofency“ Adapter „Beispiel“ : 0.1.1 , installiert 0.1.1 Adapter „E-Mail“ : 0.1.0 Adapter „dwd“ : 0.1.7 , installiert 0.1.7 Adapter „cul“ : 0.0.2 , installiert 0.0.3 Adapter „b-control-em“ : 0.1.1 Adapter „artnet“ : 0.0.3 Adapter „admin“ : 0.3.21 , installiert 0.3.20 [Aktualisierbar] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 >

/ iobroker

js update Die Version von „virtual“ kann nicht abgerufen werden

Die Version von “geofency” kann nicht abgerufen werden

Update fertig Adapter „zwave“ : 0.1.0 Adapter „yr“ : 0.1.2 , installiert 0.1.2 Adapter „web“ : 0.2.6 , installiert 0.2.6 Adapter „vis“ : 0.2.9 , installiert 0.2.9 Adapter „virtueller“ Adapter „sonos“ : 0.1.5 , installiert 0.1.4 [ aktualisierbar ] Adapter „Rikscha“ : 0.2.1 , installiert 0.2.1 Adapter „pushover“ : 0.1.0 Adapter „onkyo“ : 0.0.4 Adapter „ telnet“ : 0.0.0 Adapter „socketio“ : 0.2.3 , installiert 0.2.3 Adapter „simple-api“ : 0.0.3 , installiert 0.0.3 Adapter „sayit“ : 0.3.0 , installiert 0.3.0 Adapter „ping ” : 0.1.3 , installiert 0.1.3 Adapter “node-red” : 0.1.5 , installiert 0.1.5 Adapter “mqtt” : 0.1.6 , installiert 0.1.5 [ Updatefähig ] Adapter “mobile” : 0.0.2 Adapter „legacy“ : 0.1.12 Adapter „knx“ : 0.0.1 Controller „js-controller“ : 0.5.14 , installiert 0.5.14 Adapter „javascript“ : 0.2.3 , installiert 0.2.3 Adapter „ical“ : 0.0

2 , installiert 0.0.1 [ aktualisierbar ] Adapter „hmm“ : 0.0.15 , installiert 0.0.16 Adapter „hue“ : 0.2.0 , installiert 0.2.0 Adapter „hm-rpc“ : 0.3.5 , installiert 0.3.4 [ Aktualisierbar ] Adapter „hm-rega“ : 0.1.17 , installiert 0.1.17 Adapter „history“ : 0.1.3 , installiert 0.1.3 Adapter „highcharts“ : 0.0.0 Adapter „graphite“ : 0.1.0 Adapter „ geofency“ Adapter „Beispiel“ : 0.1.1 , installiert 0.1.1 Adapter „E-Mail“ : 0.1.0 Adapter „dwd“ : 0.1.7 , installiert 0.1.7 Adapter „cul“ : 0.0.2 , installiert 0.0.3 Adapter “b-control -em” : 0.1.1 Adapter “artnet” : 0.0.3 Adapter “admin” : 0.3.21 , installiert 0.3.20 [ Aktualisierbar ]

Dieser Befehl ändert nichts, aktualisiert nur interne Informationen über die verfügbare Adapterversion und zeigt sie an

Um nur aktualisierbare Adapter anzuzeigen, verwenden Sie den Filter „–aktualisierbar“

iobroker upgrade

Vollständige Syntax: iobroker-Upgrade \[Repository-URL\]

Aktualisiert alle Adapter (nicht js-controller), wenn sie mit einer neueren Version im angegebenen Repository verfügbar sind

Wenn kein Repository-Link angegeben ist, wird das so konfigurierte Repository verwendet

Verwendung:

iobroker upgrade – Upgrade aller Adapter.

– Upgrade aller Adapter

iobroker-Upgrade https://raw.githubusercontent.com/ioBroker/ioBroker.js-controller/master/conf/sources-dist.json – Upgrade aller Adapter aus dem Online-Repository

iobroker upgrade selbst

Vollständige Syntax: iobroker upgrade self \[Repository-URL\]

Dieser Befehl aktualisiert ioBroker.js-controller auf die Version, die im Repository zu finden ist.

Hinweis: Wenn das angegebene oder konfigurierte Repository eine niedrigere Version hat, wird es auf diese Version heruntergestuft

iobroker upgrade self – Upgrade des js-controllers auf die Version im konfigurierten Repository

iobroker upgrade self https://raw.githubusercontent.com/ioBroker/ioBroker.js-controller/master/conf/sources-dist.json – upgrade js-controller auf die Version aus dem Online-Repository.

iobroker upgrade adapterName

Vollständige Syntax: iobroker upgrade adapterName \[Repository-URL\]

Dieser Befehl aktualisiert den angegebenen Adapter auf die Version, die im Repository gefunden wird

Hinweis: Wenn das angegebene oder konfigurierte Repository eine niedrigere Version hat, wird es auf diese Version heruntergestuft.

– Upgrade des Adapters ioBroker.email auf die Version im konfigurierten Repository

iobroker-Upgrade-E-Mail https://raw.githubusercontent.com/ioBroker/ioBroker.js-controller/master/conf/sources-dist.json – Upgrade des ioBroker.email-Adapters auf die Version aus dem Online-Repository.

iobroker-Objekt abrufen

Vollständige Syntax: iobroker erhält objectId

Liest von der Befehlszeile die Beschreibung des Objekts:

C:\pWork>iobroker-Objekt get system.adapter.admin.0.uptime

>./iobroker object get system.adapter.admin.0.uptime { “_id”:”system.adapter.admin.0.uptime”, “type”:”state”, “common”:{“name”:” admin.0.uptime”,”type”:”number”,”role”:”indicator.state”,”unit”:”seconds”}, “native”:{} } 1 2 3 4 5 6 7 8 & >

/ iobroker Objekt erhalten System

Adapter

Administrator

0.uptime { „_id“ : „system.adapter.admin.0.uptime“ , „type“ : „state“ , „common“ : { „name“ : „admin.0.uptime“ , „type“ : „ Zahl“ , „Rolle“ : „Indikator.Zustand“ , „Einheit“ : „Sekunden“ } , „nativ“ : { } }

Hinweis: Normalerweise ist die Ausgabe nicht formatiert, aber Sie können das Flag „–pretty“ verwenden, um sie zu formatieren.

iobroker-Objekt chmod

Format: iobroker-Objekt chmod [Zustandsmodus]

ID kann ein Muster mit ” sein

’’ kann nur am Ende des Musters stehen.

iobroker-Objekt chown

Format: iobroker-Objekt chown

ID kann ein Muster mit ” sein

’’ kann nur am Ende des Musters stehen.

iobroker-Objektliste

Format: iobroker-Objektliste

Berechtigungen von Objekten auflisten, wie:

>iobroker-Objektliste system.adapter.admin.* ObjectAC | StaatAC | Benutzer | Gruppen | ID———+———+————-+————– +———————- rw-r–r– rw-r–r– admin Administrator system.adapter.admin.0.uptime rw-r–r– rw-r–r– Administrator Administrator system.adapter.admin.0.memRss rw-r–r– rw-r–r– Administrator Administrator system.adapter.admin.0.memHeapTotal rw-r- -r– rw-r–r– Administrator Administrator system.adapter.admin.0.memHeapUsed rw-r–r– rw-r–r– Administrator Administrator system.adapter.admin.0.connected rw-r–r– rw-r–r– Administrator Administrator system.adapter.admin.0.alive rw-r–r– Administrator Administrator system.adapter.admin.0 1 2 3 4 5 6 7 8 9 10 11 12 > iobroker-Objektlistensystem

Adapter

Administrator

* ObjektAC | StaatAC | Benutzer | Gruppen | ID — — — — – + — — — — – + — — — — — — — + — — — — — — — + — — — — — — — rw – r — r — rw – r — r — admin Administratorsystem

Adapter

Administrator

0.uptime rw -r –r –rw -r –r — admin Administratorsystem

Adapter

Administrator

0.memRss rw -r –r –rw -r –r — admin Administratorsystem

Adapter

Administrator

0.memHeapTotal rw -r –r –rw -r –r –admin Administratorsystem

Adapter

Administrator

0.memHeapUsed rw -r –r –rw -r –r — admin Administratorsystem

Adapter

Administrator

0.connected rw -r –r –rw -r –r –admin Administratorsystem

Adapter

Administrator

0.alive rw -r –r –admin Administratorsystem

Adapter

Administrator

0

ID kann ein Muster mit ” sein

’’ kann nur am Ende des Musters stehen.

iobroker set

Vollständige Syntax: iobroker set [–port value] [–enabled true|false] [–ip address] [–auth true|false] [–ssl true|false]

Wird verwendet, um Instanzeinstellungen von der Konsole aus zu ändern

Die folgenden Einstellungen können geändert werden:

port – ändern Sie den Port, an den die Instanz gebunden ist

enabled – aktiviert/deaktiviert die Instanz (kann auch mit iobroker start|stop gemacht werden)

too) ip – gebundene IP-Adresse ändern

auth – Authentifizierung aktivieren oder deaktivieren

ssl – SSL-Protokoll ein- oder ausschalten

iobroker-Zustand erhalten

Vollständige Syntax: iobroker state get stateId

Lesen Sie den JSON-Wert des Status:

>./iobroker state get system.adapter.admin.0.uptime {“val”:496,”ack”:true,”ts”:1425925626,”from”:”system.adapter.admin.0″,”lc “:1425925626} 1 2 3 & gt ;

/ iobroker state get system

Adapter

Administrator

0.uptime { „val“ : 496 , „ack“ : true , „ts“ : 1425925626 , „from“ : „system.adapter.admin.0“ , „lc“ : 1425925626 }

Sie können das Flag „–pretty“ verwenden, um die Ausgabe zu formatieren

iobroker state getplain

Vollständige Syntax: iobroker state getplain stateId

Lesen Sie den einfachen Wert des Zustands als Liste von Attributen:

>./iobroker state getplain system.adapter.admin.0.uptime 571 true system.adapter.admin.0 1425925701 1425925701 1 2 3 4 5 6 7 & gt ;

/ iobroker gibt das getplain-System an

Adapter

Administrator

0

Betriebszeit 571 wahres System

Adapter

Administrator

0 1425925701 1425925701

iobroker-Status festgelegt

Vollständige Syntax: iobroker state set stateId newValue ack

Setzwert des Zustands

„ack ist standardmäßig = false.

>iobroker state set sayit.0.tts.text „Текст сказать“

>iobroker state set adapter.0.states.temperatur 28.5 true

Bei falscher ID gibt es keine Fehlermeldung.

iobroker clean

Bereinigt alle Einstellungen von ioBroker

Sie können die Einstellungen nicht wiederherstellen, wenn Sie diesen Befehl aufrufen

>iobroker clean yes Gelöschte 205 Objekte

Neustart von ioBroker..

1 2 3 4 & gt ; iobroker clean yes Gelöschte 205 Objekte

Neustart von ioBroker

.

iobroker-Sicherung

Sicherungseinstellungen von ioBroker in Zip-Datei

Sicherungsdateien werden im Sicherungsverzeichnis erstellt und haben folgende Namen:

2015_02_10-17_49_45_backupIoBroker.tar.gz mit aktuellem Datum und Uhrzeit

Hinweis: noch nicht fertig

iobroker wiederherstellen

Vollständige Syntax: iobroker-Wiederherstellung

Wurden einige Backups mit dem Befehl iobroker backup erstellt, so können diese wiederhergestellt werden

Wenn Sie restore ohne Parameter aufrufen, erhalten Sie die Liste der verfügbaren Backups 2015_07_17-21_54_01 oder 1 1 2 3 4 5 / & gt; OboBroker Restore Please Geben Sie einen der Sicherungsnamen an oder ein anderer Index

Die folgenden Befehle sind für das angegebene Beispiel gleich:

iobroker-Wiederherstellung 0

iobroker 2015_07_18-12_20_28

iobroker 2015_07_17-21_54_01_backupIoBroker.tar.gz

iobroker /opt/iobroker/backups/2015_07_17-21_54_01_backupIoBroker.tar.gz

Alle Adapter außer „admin“ werden als deaktiviert wiederhergestellt

Um alle Adapter auf einmal zu aktivieren, können Sie „iobroker start all“ aufrufen

Wenn einige Adapter nicht hochgeladen werden, können Sie „iobroker upload all“ aufrufen, um alle Adapterdateien auf einmal hochzuladen

iobroker host

Ändern Sie den Hostnamen in den Objekten

Manchmal ist es beim Verschieben der iobroker-Daten von einem System auf ein anderes erforderlich, den Hostnamen zu ändern

Mit diesem Befehl kann es ausgeführt werden.

Sie müssen ioBroker vorher stoppen.

Um einen bestimmten Hostnamen in der DB in den aktuellen Hostnamen zu ändern, schreiben Sie iobroker host oldHostName.

nicht für Multihosts) schreiben Sie iobroker host this.

Sie können den Hostnamen in einen bestimmten ändern (nicht den Computernamen)

Dazu müssen Sie Folgendes schreiben: iobroker host set newHostName to rename from real computer name or selected host name.

iobroker list

Mit diesem Befehl ist es möglich, verschiedene Arten von Objekten und Zuständen in ioBroker anzuzeigen

Beispiel:

iobroker list objects hm-rega.0 – zeigt alle Objekte der Instanz hm-rega.0

– zeige alle Objekte der Instanz hm-rega.0 iobroker Liste Zustände hm-rega.0 – zeige alle Zustände der Instanz hm-rega.0

– zeige alle Zustände der Instanz hm-rega.0 iobroker list files vis.0 – zeige alle Dateien der Instanz vis.0

– zeige alle Dateien der Instanz vis.0 iobroker list Instanzen – zeige alle Instanzen

– alle Instanzen anzeigen iobroker list adapters – alle Adapter anzeigen

– alle Adapter anzeigen iobroker list users – alle Benutzer anzeigen

– Alle Benutzer anzeigen iobroker-Listengruppen – Alle Gruppen anzeigen

– alle Gruppen anzeigen iobroker list enums – alle enums anzeigen

– zeige alle Enums iobroker list hosts – zeige alle Hosts

Es ist möglich, kurze Namen von Typen zu verwenden:

o – Objekte

s – Staaten

u – Benutzer

e – Aufzählungen

g – Gruppen

ich – Instanzen

f – Dateien

h – Gastgeber

Z.B

iobroker l u – Alle Benutzer auflisten.

Mit der „Instanzenliste“ können Sie zusätzliche Filter verwenden:

enabled – listet alle aktivierten Instanzen auf

disabled – listet alle deaktivierten Instanzen auf

port – Listet alle Instanzen mit Port auf

ip – listet alle Instanzen auf, die an eine IP gebunden werden können

ssl – listet alle Fälle auf, in denen SSL aktiviert werden kann

Verwenden von: iobroker list instacnes –enabled zum Auflisten aller aktivierten Instanzen

oder iobroker l i –port um benutzte Ports aufzulisten.

iobroker adduser

Dieser Befehl ermöglicht das Erstellen eines neuen Benutzers (standardmäßig in der Gruppe „Administrator“)

Die Gruppe kann im Befehl mit dem Parameter „–ingroup“ definiert werden

Wenn das Passwort nicht angegeben ist, muss es von der Konsole aus eingegeben werden

Erstellen Sie den Benutzer „martin“ in der Gruppe „Benutzer“:

iobroker adduser martin –Gruppenbenutzer

Benutzer mit Passwort anlegen:

iobroker adduser martin –group user –password 12345

iobroker deluser

Um einen bestehenden Benutzer zu löschen, rufen Sie an:

iobroker deluser-Benutzername

Der Benutzer wird auch automatisch aus allen Gruppen gelöscht

Benutzer „admin“ kann nicht gelöscht werden

iobroker passwd

Um das Passwort eines bestehenden Benutzers zu ändern, rufen Sie an:

iobroker passwd-Benutzername

Sie werden aufgefordert, das Passwort einzugeben und das Passwort zu wiederholen.

Wenn keine Konsoleninteraktion erwünscht ist, rufen Sie an:

iobroker passwd Benutzername –password neuesPasswort

iobroker chmod

Dateimodus ändern.

iobroker chown

Dateibesitzer ändern.

iobroker-Datei gelesen

Lesen Sie die Datei aus der DB und speichern Sie sie im lokalen Dateisystem.

Verwendung:

iobroker-Datei gelesen [storeFile]

storeFile ist optional, kann aber ein Pfad zum Verzeichnis oder zur neuen Datei sein

Beispiel:

iobroker-Datei lautet /vis.0/main/img/picture.png /opt/myfile.png

„file“ und „read“ können zu „f r“ abgekürzt werden

iobroker file write

Datei vom lokalen Dateisystem in die DB schreiben.

Verwendung:

iobroker-Datei schreiben

storeFile kann ein Pfad zum Verzeichnis in DB oder ein vollständiger Name sein

Beispiel:

iobroker-Datei schreiben /opt/myfile.png /vis.0/main/img/picture.png

„file“ und „write“ können zu „f w“ abgekürzt werden.

RaspberryPiのioBrokerインストールガイド Update

Video ansehen

Neues Update zum Thema iobroker restart raspberry

Quick introduction to the free and open source automation platform ioBroker written in JavaScript and Node.js as well as exact steps for installing ioBroker on Raspberry Pi with Raspbian GNU/Linux distribution. The same installation process can be applied on other Debian and Ubuntu based Linux distributions:
curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash –
sudo apt-get install -y nodejs
curl -sL https://iobroker.net/install.sh | bash –
For more details about ioBroker visit: https://www.iobroker.net/
For learn more details about Raspberry Pi Imager please watch: https://www.youtube.com/watch?v=qjIjS5X3FHg
0:00 Introduction to ioBroker
2:14 Step 1: Flash Raspbian on microSD card
3:12 Step 2: Setup Raspbian
4:14 Step 3: Install Node.js and ioBroker
4:56 Step 4: Setup ioBroker
6:39 One more thing…

iobroker restart raspberry Einige Bilder im Thema

 New  RaspberryPiのioBrokerインストールガイド
RaspberryPiのioBrokerインストールガイド New

ioBroker unter Docker | installieren und einrichten – Review Update

Hallo, ich habe den IObroker in Docker (wie angegeben) auf einem Raspi 4 installiert. Der IObroker läuft auch… ABER Meine Raspimatic läuft auf einem anderen Raspberry pi im lokalen Netz 192.168.100.xxx Ich kenne im Linux nicht wirklich gut aus, wie komme ich vom Netzwerk im Container in mein lokales Netz? ..denn ohne die Homematic zu erreichen, nutzt mir der …

+ ausführliche Artikel hier sehen

Read more

Mit ioBroker können verschiedene Automatisierungslösungen oder Geräte in einem System kombiniert werden

Um bestimmte Gateways oder Geräte ansprechen zu können, werden in ioBroker verschiedene Adapter verwendet

Docker Basics Docker ermöglicht es, Anwendungen per Kommando in einem sogenannten Container zu starten

Ein Container ist eine vom Betriebssystem unabhängige, isolierte Umgebung (Betriebssystem):

Das Betriebssystem spielt also keine Rolle, sofern Docker installiert werden kann

Wenn Sie einen Container zum ersten Mal starten, lädt Docker automatisch alle notwendigen Quellen

aus dem Web.

Docker finden Sie unter

siehe auch:

Docker ermöglicht es, Anwendungen per Kommando in einem sogenannten Container zu starten

Ein Container ist eine vom Betriebssystem (OS) unabhängige, isolierte Umgebung: Das OS ist also irrelevant, sofern Docker installiert werden kann

Beim ersten Start eines Containers lädt Docker alle selbstständig notwendigen Quellen aus dem Internet

Docker kann auf Windows, macOS oder einer Linux-Distribution installiert werden, siehe auch: Docker

Für einen kurzen Überblick, wie sich ioBroker ins SmartHome einfügt, siehe auch: Smart Home Plattform: Systeme

Software IoBroker GitHub https://github.com/ioBroker/ioBroker aktuelle Version 2022-02-13 gefunden am 06.03.2022

Starten Sie ioBroker im Docker

Als Voraussetzung für die Einrichtung des ioBrokers ist für die hier vorgestellte Variante ein Docker-Setup erforderlich, siehe: Docker.

Ich habe ein eigenes Netzwerk für Smart-Home-Container erstellt, damit diese einfacher Daten untereinander austauschen können.

Docker-Netzwerk Smart Home erstellen

Um dann ioBroker im erstellten Netzwerk zu starten, habe ich folgenden Befehl verwendet:

mkdir -p /docker mkdir -p /docker/iobroker docker run -d \ –network=smart-home \ -p 8081:8081 \ -p 8081:8081/udp \ -p 8082:8082 \ -p 8083:8083 \ -p 1882:1882 \ -p 8091:8091 \ –hostname=iobroker \ –restart=always \ –name iobroker \ -v /docker/iobroker/:/opt/iobroker \ buanet/iobroker -p

Die erste Verbindung zum Webinterface führt uns zu den Haupteinstellungen:

Passwort

Um den Zugriff auf ioBroker zu sichern, muss die Authentifizierung eingeschaltet sein

Über „Benutzer“ kann zuvor ein Passwort vergeben werden

Zum Aktivieren der Authentifizierung auf Instanzen „admin.0“:

Schließen Sie den Adapter an, zum Beispiel: deConz ZigBee

Conbee hat einen eigenen Adapter zur Steuerung von ZigBee-Geräten

Nach dem Hinzufügen muss das Phoscon-GW des ConBee-Sticks auf „App verbinden“ eingestellt werden

Informationen zur Inbetriebnahme von ConBee finden Sie unter: Conbee 2 Inbetriebnahme.

dann: API-Schlüssel erstellen und speichern:

Wenn die Verbindung zu deCONZ funktioniert, wird der API-Schlüssel automatisch ausgefüllt

InfluxDB

Der Adapter „InfluxDB“ ermöglicht das Schreiben historischer Werte in eine Influx-Datenbank

Zur Einrichtung siehe: Docker InfluxDB.

Nach der Einrichtung kann die Influx-Datenbank in den Adaptereinstellungen hinterlegt werden:

Zum Erfassen der Zählerstände, an Objekten und „Einstellungen“:

Durch die Aktivierung werden alle Statusänderungen in die Datenbank geschrieben:

An dieser Stelle kann auch die Vorlaufzeit definiert werden

Verschiedene Geräte anschließen und steuern

Die Steuerung der Geräte direkt über ihre Objekte ist möglich, aber nicht wirklich komfortabel

Der Menüpunkt Objekte dient zur Anzeige aller Zustände und zum Testen bestimmter Aktionen

Um Sensoren oder Schalter mit bestimmten Geräten zu verknüpfen, bedarf es einer gewissen Logik, dazu gibt es in ioBroker mehrere Möglichkeiten

Für einfache Verknüpfungen kann der Adapter „Scenes“ verwendet werden; der “Script Engine”-Adapter bietet noch einige weitere Möglichkeiten

Szenen – reagieren auf bestimmte Werte

Der Adapter „Scenes“ bietet eine sehr einfache Möglichkeit, bestimmte Trigger mit bestimmten Aktionen zu verknüpfen

Als Beispiel steuere ich einen Luftentfeuchter über eine steuerbare Steckdose anhand der von einem Sensor angezeigten Luftfeuchtigkeit:

Liegt der Wert über 65, wird die Steckdose über die Szenenzustände eingeschaltet

Ein zweiter Prozess schaltet den Luftentfeuchter dann wieder aus, wenn der Wert kleiner als 60 ist

Script Engine – logische Prozesse

Das Beispiel mit dem Luftentfeuchter lässt sich mit dem Adapter „Script Engine“ wie folgt umsetzen:

Die Adapter Script Engine verwendet visuelle Elemente (blockly), um JavaScript-Code zu generieren

Das hier vorgestellte Beispiel generiert automatisch den folgenden JavaScript-Block:

on({id: ‘deconz.0.Sensors.10.humidity’, change: “ne”}, function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; if (getState (“deconz.0.Sensors.10.humidity”).val >= ’65’) { setStateDelayed(“deconz.0.Lights.7.on”/*Smart Plug 7 on*/, true, 600000, false) ; } if (getState(“deconz.0.Sensors.10.humidity”).val < '60') { setState("deconz.0.Lights.7.on"/*Smart Plug 7 on*/, false) ; } });

Fazit

Der ioBroker kann verschiedenste Smart-Home-Lösungen anbinden

Eine große Anzahl an Adaptern im ioBroker bietet zahlreiche Anschluss- und Erweiterungsmöglichkeiten

Mithilfe von Docker können Container auch außerhalb von ioBroker betrieben und angebunden werden, jedoch auf derselben Hardware, beispielsweise ein ZigBee Gateway Conbee 2, eine InfluxDB und Grafana für die Visualisierung

Alternativ zu ioBroker siehe auch: Home Assistant.

ラズベリーパイとカラー電子ペーパーで天気予報ステーションを作る Update

Video unten ansehen

Weitere Informationen zum Thema iobroker restart raspberry

ラズベリーパイと7色表示可能な電子ペーパーを利用して天気予報ステーションを作ります。
Raspberry Pi 4(アマゾン)
https://amzn.to/3plD4xJ
現在は半導体不足の影響で値段が高騰していますが、ボード単体の場合1万円以下(8GBでも)
キットは入っているモノによりますが、2万円以下ぐらいが目安です。それ以上は多分ぼったくりです。
また、この動画では Pi 3B+ を利用していますが、値段的にPi4 も大きな差が無いので買うならPi4がオススメです。うちでは余っていたラズベリーパイの再利用です。
インストールコマンドはこのリンクからどうぞ
https://github.com/kotamorishi/weather-impression#easy-install-for-raspberry-pi-osbuster
(説明欄では省略されてしまうためコマンド全部を貼り付けできませんでした・・)
この動画のblog記事
https://kotamorishita.com/rpi-epaper-weather-station/
OS書き込みアプリ Raspberry Pi Imager
https://www.raspberrypi.com/software/
気象情報取得APIの Open weather map
Free の下の\”Get API Key\”からユーザー登録できます
https://openweathermap.org/price
もりしーのTwitter
https://twitter.com/kotaMorishita
撮影
カメラ:Fujifilm X-T3 https://amzn.to/2AHKipk
レンズ:Fujifilm XF 18mm F2 https://amzn.to/2sJ1xCV
マイク:SHURE MV7 https://amzn.to/2UJiz1H

メンバーシップ(たまにライブ放送してますが、大した事は言いませんのでもりしーのYouTube活動サポートしてやってもいいぜ!という方だけどうぞ)
https://www.youtube.com/channel/UCsgQtIeFObrixeJIYBCi5VQ/join
まさか買ってもらった欲しい物リスト
https://www.amazon.jp/hz/wishlist/ls/16EWF8V9SVOQK
雑記
片頭痛の漢方薬はコレ飲んでます。効く場合と効かない場合半々なので、毎日飲めば良いという話かもしれないが、とにかく苦くて後味が悪いのでできるだけ飲みたくない・・・
https://www.tsumura.co.jp/kampo/list/detail/031.html

iobroker restart raspberry Einige Bilder im Thema

 New  ラズベリーパイとカラー電子ペーパーで天気予報ステーションを作る
ラズベリーパイとカラー電子ペーパーで天気予報ステーションを作る Update

Installation von InfluxDB & Grafana inkl … – verdrahtet.info Aktualisiert

14.02.2020 · bei mir läuft IOBroker in einem Docker/Portainer. InfluxDB & Grafana läuft inzwischen auch soweit. Aber ich bekomme es nicht hin das InfluxDB & Grafana nach einem Reboot des Raspberry automatisch startet. Ich muß immer mit “sudo service influxdb start” und “sudo service grafana-server start” von hand starten.

+ hier mehr lesen

Read more

Ein SmartHome besteht immer aus einer Vielzahl von Sensoren

So hat man viele Temperatursensoren – Lichtsensor – Wind – aber auch Regenmesser

Aber was tun mit all diesen Daten

Oft nichts – was auch okay ist, denn warum sollte man sich 5 Jahre später den Temperaturwert im Badezimmer anschauen.

Aber hin und wieder ist es auch interessant, diverse Daten miteinander zu vergleichen

Aus diesem Grund (und weil mich viele Newsletter-Abonnenten danach gefragt haben) möchte ich Ihnen Grafana hier kurz vorstellen.

Grafana?

Richtig – Grafana

Mit Grafana ist es ganz einfach, verschiedene Daten miteinander zu vergleichen

So lässt sich ganz einfach erkennen, wie sich eine Solltemperatur in einem Raum auf die Heizung auswirkt: Temperaturprofil im Gartenhaus – Blau = SOLL-Temperatur – Gelb = IST-Temperatur

influxDB-Installation

Wer Grafana nutzen möchte, braucht eine „echte“ Datenbank, um all diese Daten schnellstmöglich zur Verfügung zu haben

Dafür verwende ich in meinem Beispiel influxDB

Grafana versteht sich auch gut mit MySQL oder ähnlichem

Im Beispiel verwende ich den Raspberry Pi 4 als Basis, den wir in meinem Kurs bereits mit der CPU und dem ioBroker ausgestattet haben

Das installierte Image ist ein Debian-Image, daher werden wir diese Schritte nacheinander ausführen

wget -qO- https://repos.influxdata.com/influxdb.key | sudo apt-key add – source /etc/os-release echo “deb https://repos.influxdata.com/debian $(lsb_release -cs) stable” | sudo tee /etc/apt/sources.list.d/influxdb.list

Führen Sie dann die Installation mit diesen beiden Befehlen aus:

sudo apt-get update sudo apt-get install influxdb

Und als letzten Schritt starten Sie zuerst die Datenbank:

sudo-Dienst influxdb starten

Ist diese nun gestartet, können wir sie einfach mit folgendem Befehl öffnen:

sudo-Zufluss

Legen Sie nun die Benutzer und die Datenbank in der Datenbank selbst an

Schließlich geben wir dem „Benutzer“ das Recht, auf die Datenbank zuzugreifen

Wichtig – Adminpasswort und Benutzerpasswort entsprechend tauschen:

ERSTELLEN SIE BENUTZER „admin“ MIT PASSWORT „“ MIT ALLEN PRIVILEGIEN ERSTELLEN SIE BENUTZER „user“ MIT PASSWORT „“ ERSTELLEN SIE DATENBANK „iobroker“ GRANT ALL ON „iobroker“ TO „user“

Schließen Sie das Datenbankprogramm einfach wieder mit „Beenden“

Sobald dies erledigt ist, müssen wir nun die Zugriffskontrolle auf die Datenbank anpassen

Dazu öffnen wir den Editor mit dem Befehl:

sudo nano /etc/influxdb/influxdb.conf

Und passen Sie die Rechte unten an:

[http] enabled = true bind-address = „:8086“ auth-enabled = true log-enabled = true write-tracing = false pprof-enabled = false https-enabled = false https-certificate = „/etc/ssl/influxdb. pem”

Zum Schluss starten Sie einfach den Dienst neu:

sudo-Dienst influxdb neu starten

Ihr Grafana Einsteigerseminar!

Installieren Sie Grafana

Nachdem die Datenbank nun installiert ist, können wir uns um das Grafana-Tool kümmern

Passen Sie dazu zunächst die sources.list an

Möglicherweise müssen Sie dies überhaupt nicht tun, wenn Sie alles auf einem anderen Image installieren

Wenn Sie jedoch die im Kurs vorgestellte Zentraleinheit verwenden, muss die Datei angepasst werden:

sudo nano /etc/apt/sources.list

Fügen Sie hier die folgenden Quellen hinzu:

deb https://archive.raspbian.org/raspbian Buster Main Contrib Non-Free deb-src https://archive.raspbian.org/raspbian Buster Main Contrib Non-Free

Beenden Sie den Editor mit STRG + X und aktualisieren Sie dann die Paketquellen:

sudo apt-get update

Jetzt können wir eine erforderliche Bibliothek mit dem folgenden Befehl installieren:

sudo apt-get install -y adduser libfontconfig1

Und schließlich installieren Sie Grafana Server mit den folgenden zwei Befehlen:

wget https://dl.grafana.com/oss/release/grafana-rpi_7.4.3_armhf.deb sudo dpkg -i grafana-rpi_7.4.3_armhf.deb

Wenn der Server nicht gestartet ist – führen Sie diesen Befehl aus

sudo service grafana-server starten

Die Installation ist bereits abgeschlossen und wir können die Weboberfläche von Grafana öffnen:

https://IHREIP:3000/

Sobald Sie Zugriff haben, können Sie nun „admin“ als Benutzernamen und Passwort verwenden

Unmittelbar nach dem Einloggen werden Sie nach einem neuen Passwort für Ihren Benutzer gefragt

Verbindung mit ioBroker

Nachdem die Grafana-Installation nun abgeschlossen ist und die Influx-DB läuft, kümmern wir uns um den ioBroker

Hier gibt es bereits einen Adapter, den wir problemlos einbauen können

Der Vollständigkeit halber hier der Link für weitere Informationen: https://github.com/ioBroker/ioBroker.influxdb

Diese Einstellungen habe ich hier vorgenommen: Wenn wir nun Objekten in ioBroker zuweisen, dass die Daten in InfluxDB gespeichert werden, können wir diese nun in Grafana auswerten

Aber wir haben hier einen Schritt vergessen – die Konfiguration in Grafana anzupassen:

Jetzt können Sie auch Berichte in Grafana erstellen

Habe Spaß!

Video:

Links:

Weitere Informationen zur Installation von InfluxDB: https://docs.influxdata.com/influxdb/v1.7/introduction/installation/

Aktualisiert – 24.02.2020

Gab es Probleme bei der Installation oder Erstellung der Datenbank, schickte mir ein Viewer eine Lösung

Der Fehler war folgender:

ERR: Authentifizierungsdaten können nicht analysiert werden

Warnung: Es ist möglich, dass dieser Fehler darauf zurückzuführen ist, dass keine Datenbank eingerichtet wurde

Setzen Sie bitte eine Datenbank mit dem Befehl “use “.

Die Lösung ist dann wie folgt

Geben Sie einfach diese Befehle ein

Übrigens, wenn Sie Hilfe eingeben, erhalten Sie eine Liste mit vielen anderen Befehlen, die hier helfen können!

壊れたICOMのIC-R1を修理しようとしたら、まさかの結果に! New Update

Video unten ansehen

Weitere hilfreiche Informationen im Thema anzeigen iobroker restart raspberry

壊れて電源が入らなくなったという受信機のIC-R1を貰ったので、修理してみるべぇ!と思って操作すると…
無事に復活しましたが・・・まさか!(笑)
さすがにバッテリーは劣化していたので、新品のニッケル水素バッテリーに交換を行いました。

フリーBGM・音楽素材MusMus http://musmus.main.jp/​​​​

iobroker restart raspberry Einige Bilder im Thema

 Update  壊れたICOMのIC-R1を修理しようとしたら、まさかの結果に!
壊れたICOMのIC-R1を修理しようとしたら、まさかの結果に! New

Raspberrymatic CCU Docker Installation – BangerTECH Aktualisiert

01.12.2021 · Ich wollte es aber auf einem Raspberry Pi 4 mit externer USB SSD Boot und Docker laufen haben (nicht mit IOBroker). Arbeite viel mit Node-Red, Mosquitto, influxdb und Grafana. Portainer hilft managen. Nach dem Suchen einer Lösung im Internet habe ich Deine Seite gefunden. Nach der Installation konnte ich erfolgreich Homematic bzw.

+ ausführliche Artikel hier sehen

Read more

Warum sollten Sie Raspberrymatic als Docker-Container betreiben? Ich hatte kürzlich ein Projekt, bei dem ich 4 Raspberry Pis in ein Gehäuse eingebaut habe und jeden einzelnen Raspberry mit einem Systemmonitor (0,96″ OLED-Display) ausstatten wollte

Auf einem Raspberry war RaspberryPi OS installiert, also kein Problem, auf dem zweiten openhabian, das ebenfalls auf RaspberryPi OS basiert, auch kein Problem, auf dem dritten lief HASSIO und es war nicht möglich das OLED Display anzusteuern, und auf dem Viertens lief Raspberrymatic als Standalone, wo auch keine Adressierung oder weitere Konfiguration möglich war

Aus diesem Grund habe ich mich entschieden, Raspberrymatic Docker zu installieren

Ich merke keinen Unterschied in Verhalten oder Leistung

Leider war das Einspielen eines Backups aus der Standalone-Lösung nicht möglich bzw

hat funktioniert, aber die Steuerung war sehr träge und somit unbrauchbar

Eigentlich auch verständlich, da die Systeme grundlegend unterschiedlich funktionieren

So nun zum Einbau

Natürlich benötigt man hier Docker um Raspberrymatic im Container zu starten

Ich habe bereits in einem anderen Beitrag beschrieben, wie Sie Docker installieren

1

Docker-Benutzer hinzufügen:

Möglicherweise müssen Sie dann den Benutzer, den Sie auf dem Raspberry verwenden, zur Docker-Gruppe hinzufügen

sudo usermod -aG docker $USER

Tauschen Sie einfach den $USER mit Ihrem Benutzer aus

2

Installieren Sie piVCCU:

piVCCU ist ein Projekt mit dem die Original Homematic CCU3 Firmware auf z.B

Raspberry Pi kann installiert werden

Diese Kernelmodule pivccu-modules-dkms können Sie mit diesen Befehlen installieren.

sudo apt install wget ca-certificates wget -q -O – https://www.pivccu.de/piVCCU/public.key | sudo apt-key add – sudo sh -c ‘echo “deb https://www.pivccu.de/piVCCU stable main” >/etc/apt/sources.list.d/pivccu.list’ sudo apt update sudo apt install build-essential bison flex libssl-dev sudo apt install pivccu-modules-dkms

3

Wenn Ihr GPIO das Homematic-Modul verwendet:

Wenn Sie den Raspberry Pi mit dem RPI-RF-MOD/HM-MOD-RPI-PCB über die GPIOs verwenden, müssen Sie zusätzliche Skripte installieren

Wenn Sie USB-Sticks (HB-RF-USB, HB-RF-USB-2, HB-RF-ETH) verwenden, benötigen Sie diese Schritte nicht und können mit Schritt 4 fortfahren.

sudo apt install pivccu-modules-raspberrypi

3.1 Bluetooth ausschalten:

sudo bash -c ‘cat <>/boot/config.txt dtoverlay=pi3-disable-bt EOT’ sudo systemctl disable hciuart.service

3.2 Serielle Konsole ausschalten:

sudo sed -i /boot/cmdline.txt -e “s/console=serial0,[0-9]\+ //” sudo sed -i /boot/cmdline.txt -e “s/console=ttyAMA0,[0 -9]\+ //”

4

Installieren Sie das Kernelmodul ep3_char_loop:

sudo sh -c ‘echo eq3_char_loop >/etc/modules-load.d/eq3_char_loop.conf’

5

Dann laden und starten wir alle benötigten Kernel mit:

sudo-Dienst pivccu-dkms starten sudo modprobe eq3_char_loop

6

Docker-Compose-Datei erstellen:

Jetzt können Sie bereits eine docker-compose.yml-Datei erstellen

Ich speichere diese. yml-Datei in /home/pi/docker-compose/raspberrymatic.

Version: “3.8” services: raspberrymatic: image: ghcr.io/jens-maus/raspberrymatic:latest container_name: ccu hostname: homematic-raspiprivilegiert : true Neustart: sofern nicht gestoppt stop_grace_period: 30s Volumes: – ccu_data:/usr/local:rw – /lib/modules:/lib/modules:ro – /run/udev/control:/run/udev/control ports: – “8080:80” – “2001:2001” – “2010:2010” – “9292:9292” – “8181:8181” Datenträger: ccu_data:

Gehen Sie dann mit cd /home/pi/docker-compose/raspberrymatic in das Verzeichnis und starten Sie diesen Container mit:

Je nach Internetverbindung kann dies beim ersten Start etwas dauern, da die Dateien erst heruntergeladen werden müssen

#ohne Protokolldatei docker-compose up -d #mit Protokolldatei docker-compose up

Wenn der Container/das Skript erfolgreich gestartet wird, erhalten Sie eine Statusanzeige (#mit Protokolldatei) wie folgt ausgegeben:

7

Rufen Sie die Homematic CCU auf:

Um die CCU im Browser aufzurufen, geben Sie http://IhreIP-Adresse:8080 ein und Sie werden dann mit der Erstkonfiguration bzw

dem Willkommensbildschirm begrüßt

Nun haben Sie Raspberrymatic/CCU3 über einen Docker-Container auf einem Raspberry Pi installiert

Sie können diesen Container natürlich nach Belieben aktualisieren, stoppen, starten, löschen usw.

ioBroker reparieren Befehle fixen mit und ohne meinem Tool Update

Video ansehen

Neues Update zum Thema iobroker restart raspberry

ioBroker reparieren Befehle fixen mit und ohne meinem Tool
Meine Webseite = https://www.elzershark.com
Zum Tool = https://www.elzershark.com/forum/index.php?thread/4-backup-install-tool-iobroker/
►Raspberry Pi 4 4GB RAM = https://amzn.to/2Mf93wR
►Mein SmartHome Equipment:
►Raspberry Pi 4 4GB RAM = https://amzn.to/2Mf93wR
►Amazon Echo Connect = https://amzn.to/2EIf4xN
►Raspberry Pi 3 B+ = https://amzn.to/2ICFFN3
►Raspberry Pi 3 Gehäuse + Netzteil + Lüfter + 3x Aluminium Kühlkörper + Mikro-USB-Kabel mit EIN / AUS Schalter http://amzn.to/2C7QfeU
►Micro SDHC Karte 8GB Class 10 = http://amzn.to/2BGSlS9
►Broadlink = http://amzn.to/2By2cud
►Amazon Echo Show = http://amzn.to/2oExklU
►Amazon Echo http://amzn.to/2kdEHMr
►Amazon Echo Dot = http://amzn.to/2yScZcJ
►Raspberry Zero W = http://amzn.to/2CWNyd7
►Enthält Affiliate Links
Unterstützt mich gerne per PayPal: https://www.paypal.me/Elzershark

iobroker restart raspberry Einige Bilder im Thema

 New Update  ioBroker reparieren Befehle fixen mit und ohne meinem Tool
ioBroker reparieren Befehle fixen mit und ohne meinem Tool New

Nextcloud https mit self-signed Zertifikat einrichten – Modius Update

15.09.2017 · Hier auf dem Blog habe ich neulich erklärt, wie man Nextcloud unter Ubuntu 16.04 installiert. Diese Installation wollen wir heute nun etwas sicherer machen, indem wir die Verbindung zum Server mittels SSL Zertifikat verschlüsseln. Dafür werden wir uns selbst ein self-signed Zertifikat auf unsere Nextcloud Server erstellen und dieses anschließend in die …

+ ausführliche Artikel hier sehen

Read more

Aktivieren des SSL-Moduls für Apache2

Hier im Blog habe ich neulich erklärt, wie man Nextcloud auf Ubuntu 16.04 installiert

Heute wollen wir diese Installation etwas sicherer machen, indem wir die Verbindung zum Server mit einem SSL-Zertifikat verschlüsseln

Dazu erstellen wir ein selbstsigniertes Zertifikat auf unserem Nextcloud-Server und integrieren es dann in die Nextcloud-Konfiguration

Um ein selbstsigniertes Zertifikat auf unserem Webserver für Nextcloud nutzen zu können, müssen wir zunächst das entsprechende Apache2-Modul für SSL aktivieren.

a2enmod ssl 1 a2enmod ssl

Dann müssen wir Apache2 neu starten

systemctl neu starten apache2.service 1 systemctl neu starten apache2

Bedienung

Erstellen des selbstsignierten Zertifikats

Im nächsten Schritt erstellen wir zunächst einen Ordner für das SSL-Zertifikat.

sudo mkdir /etc/apache2/ssl 1 sudo mkdir /etc/apache2/ssl

Nachdem wir einen Ordner zum Speichern des Zertifikats erstellt haben, müssen wir ihn nun erstellen

Dazu verwende ich folgenden Befehl:

sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/apache2/ssl/nextcloud.key -out /etc/apache2/ssl/nextcloud.crt 1 sudo openssl req – x509 – nodes – days 365 -newkey rsa: 2048 -keyout /etc/apache2/ssl/nextcloud

key-out /etc/apache2/ssl/nextcloud

Crt

Nach Eingabe des Befehls werden wir nach einigen Informationen gefragt

Diese muss dann entsprechend ausgefüllt werden

Wenn wir nun in den Ordner /etc/apache2/ssl schauen, sollte es dort eine nextcloud.key und eine nextcloud.crt geben

[email protected]:/etc/apache2/ssl# ls -lsia insgesamt 24 801308 4 drwxr-xr- x 2 root root 4096 17

August 19:52

792352 4 drwxr-xr-x 9 root root 4096 13

August 10:51.

801310 4 -rw-r–r– 1 root root 1407 13

August 10:52 apache.crt 801309 4 -rw-r–r — 1 root root 1704 Aug 13 10:52 apache.key 801312 4 -rw-r–r– 1 root root 1704 Aug 17 19:52 nextcloud.key 801313 4 -rw-r–r– 1 root root 1229 17

August 19:52 nextcloud.crt 1 2 3 4 5 6 7 8 root @ nextcloud : / etc / apache2 / ssl # ls -lsia insgesamt 24 801308 4 drwxr – xr – x 2 root root 4096 17

August 19: 52

792352 4 drwxr – xr – x 9 Wurzel Wurzel 4096 13

August 10 : 51

801310 4-rw -r — r — 1 root root 1407 Aug 13 10:52 apache. crt 801309 4 – rw -r — r — 1 root root 1704 Aug 13 10:52 apache. key 801312 4 – rw -r — r — 1 root root 1704 17

August 19:52 nextcloud. key 801313 4 – rw -r — r — 1 root root 1229 17

August 19:52 nextcloud. crt

Erstellen Sie nextcloud-ssl.conf

Um das gerade erstellte Zertifikat einzubinden, erstellen wir eine neue Datei in /etc/apache2/site-available namens nextcloud-ssl.conf

Diese wird mit einem Editor geöffnet

Die Datei wird dann mit folgendem Inhalt gefüllt

ServerAdmin [email protected] DocumentRoot /var/www/nextcloud ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log kombiniert SSLEngine auf SSLCertificateFile /etc/apache2/ssl/nextcloud.crt SSLCertificateKeyFile /etc/apache2/ssl/nextcloud.key 1 2 3 4 5 6 7 8 9 < VirtualHost * : 443 > ServerAdmin webmaster @ localhost DocumentRoot / var / www / nextcloud ErrorLog $ { APACHE_LOG_DIR } / error. log CustomLog $ { APACHE_LOG_DIR } / access. log kombiniert SSLEngine auf SSLCertificateFile / etc / apache2 / ssl / nextcloud. crt SSLCertificateKeyFile / etc / apache2 / ssl / nextcloud. key < / VirtualHost >

Dann müssen wir die Konfiguration aktivieren

a2ensite nextcloud-ssl.conf 1 a2ensite nextcloud – ssl. conf

Damit die Einstellungen nun auch geladen werden, müssen wir den Webserver einmalig neu starten.

systemctl restart apache2.service 1 systemctl restart apache2. service

Überprüfen Sie die https-Verbindung von Nextcloud

Zum Testen können wir Nextcloud im Browser mit https:// aufrufen

In meinem Fall würde der Aufruf so aussehen:

https://192.168.10.69/nextcloud/

In dem sich nun öffnenden Fenster werden wir darauf hingewiesen, dass die Verbindung nicht sicher ist

Dies liegt daran, dass wir an dieser Stelle ein selbstsigniertes Zertifikat verwenden

Würden wir ein offizielles Zertifikat einer Prüfstelle oder z.B

LetsEncrypt, dies würde nicht angezeigt.

Wenn wir die erweiterten Informationen aufrufen, können wir auf die Seite umgeleitet werden.

Wir haben unsere Verbindung jetzt mit SSL verschlüsselt

Auch wenn das https oben durchgestrichen ist, funktioniert es genauso wie mit einem Zertifikat einer entsprechenden Prüfstelle.

DIY Smart Home #16 – ioBroker Raspberry Pi Admin 5.x update! Update

Video unten ansehen

Neues Update zum Thema iobroker restart raspberry

In diesem Video updaten wir auf die neue Admin Oberfläche 5.x!
Ich freue mich über eure Kommentare, Bewertungen und ein Abo. 😊
Instagram: https://www.instagram.com/bauers_bastelstube/
#iobroker #raspberrypi4 #smarthome
▬▬▬▬▬▬▬▬▬▬ Produkte ▬▬▬▬▬▬▬▬▬▬▬▬
Raspberry Pi 4 8GB RAM: https://www.reichelt.de/das-raspberry-pi-4-b-8gb-black-bundle-rpi4-bbdl-8gb-p284582.html?\u0026nbc=1
16GB MicroSD Sandisk: https://www.reichelt.de/microsdhc-speicherkarte-16gb-sandisk-ultra-sdsquar016ggn6ma-p214843.html?\u0026nbc=1
JeeLink USB Adapter: https://www.digitalsmarties.net/products/jeelink
TechnoLine Funk Temperatursender: https://www.amazon.de/Technoline-Au%C3%9Fensender-Temperatur-Luftfeuchtesender-Display/dp/B00392XX5U/ref=sr_1_1?__mk_de_DE=%C3%85M%C3%85%C5%BD%C3%95%C3%91\u0026crid=3A43GZNSTXKNT\u0026dchild=1\u0026keywords=technoline+tx29dth-it\u0026qid=1612634879\u0026sprefix=Technoline+tx29%2Caps%2C197\u0026sr=8-1
▬▬▬▬▬▬▬▬▬▬ Software ▬▬▬▬▬▬▬▬▬▬▬▬
Putty: https://putty.org/
Raspberry Pi Imager: https://www.raspberrypi.org/software/
ioBroker: https://www.iobroker.net/#de/download

iobroker restart raspberry Einige Bilder im Thema

 New  DIY Smart Home #16 - ioBroker Raspberry Pi Admin 5.x update!
DIY Smart Home #16 – ioBroker Raspberry Pi Admin 5.x update! New

ESP32-CAM Shield PCB with Telegram: Photos, Outputs … Neueste

12.08.2020 · Preparing Arduino IDE. We’ll program the ESP32-CAM using Arduino IDE, so make sure you have the ESP32 add-on installed in your Arduino IDE. Installing the ESP32 Board in Arduino IDE (Windows, Mac OS X, Linux) Universal Telegram Bot Library. To interact with the Telegram bot, we’ll use the Universal Telegram Bot Library created by Brian Lough that …

+ Details hier sehen

Read more

In diesem Projekt erstellen wir eine PCB-Abschirmung für die ESP32-CAM AI-Thinker-Platine mit einem PIR-Bewegungssensor, einem BME280-Temperatur-, Feuchtigkeits- und Drucksensor und einigen zusätzlichen freiliegenden Stiften

Wir erstellen einen Telegram-Bot für die ESP32-CAM, mit dem Sie Ihr Board von überall aus steuern können, um ein Foto anzufordern, Sensorwerte abzurufen oder den Blitz zu steuern

Außerdem erhalten Sie eine Benachrichtigung mit einem neuen Foto, wenn eine Bewegung erkannt wird

Alternativ können Sie diesem Projekt auch folgen, indem Sie die Schaltung auf einem Steckbrett verdrahten

Sehen Sie sich das Video-Tutorial an

Dieses Projekt ist im Videoformat und im schriftlichen Format verfügbar

Sie können sich das Video unten ansehen oder für die schriftlichen Anweisungen nach unten scrollen

Ressourcen

Alle zum Erstellen dieses Projekts erforderlichen Ressourcen finden Sie unter den folgenden Links (oder besuchen Sie das GitHub-Projekt):

Projektübersicht

Dieses Projekt besteht aus drei Teilen:

Merkmale der ESP32-CAM-Leiterplattenabschirmung

Die PCB-Abschirmung ist so konzipiert, dass sie auf die ESP32-CAM gestapelt werden kann

Aus diesem Grund benötigen Sie, wenn Sie unser PCB verwenden möchten, das gleiche ESP32-CAM-Board

Wir verwenden das ESP32-CAM AI-Thinker-Modul

Wir verwenden auch ein Kameramodul mit einem längeren Band

Damit sich bei der Montage des Shields die Kamera auf der gleichen Seite des PIR-Bewegungssensors befindet.

Alternativ können Sie die Schaltung auch auf einem Steckbrett montieren.

Das Shield besteht aus:

BME280 Temperatur-, Feuchtigkeits- und Drucksensor (4 Pins);

Mini-PIR-Bewegungssensor (AM312);

Freiliegende 5-V- und GND-Pins zum Einschalten der Abschirmung und der ESP32-CAM;

Andere exponierte GPIOs, wenn Sie zusätzliche Funktionen hinzufügen möchten

ESP32-CAM PCB Shield Pin Assignment

Dies ist die Pinbelegung für den BME280 und den PIR-Bewegungssensor auf der Platinenabschirmung:

PIR-Bewegungssensor: GPIO 13

BME280: GPIO 14 (SDA), GPIO 15 (SCL)

ESP32-CAM-Telegramm-Bot

Um das ESP32-CAM-Schild zu steuern, erstellen wir einen Telegram-Bot, damit Sie Ihre ESP32-CAM von überall aus überwachen können (solange Sie auf Ihrem Smartphone Internetzugang haben)

Sie können die folgenden Befehle verwenden, um mit Ihrem Bot zu interagieren:

/start : sendet eine Willkommensnachricht mit den gültigen Befehlen zur Steuerung des Schildes;

: sendet eine Willkommensnachricht mit den gültigen Befehlen zur Steuerung des Schildes; /flash : Schaltet den LED-Blitz der ESP32-CAM um;

: schaltet den ESP32-CAM-LED-Blitz um; /photo : Nimmt ein neues Foto auf und sendet es an Ihr Telegram-Konto;

: nimmt ein neues Foto auf und sendet es an Ihr Telegram-Konto; /readings: Fordert die neuesten Messwerte des BME280-Sensors an

Zusätzlich erhalten Sie eine Benachrichtigung mit einem Foto, wenn eine Bewegung erkannt wird

Schließlich können nur Sie (oder jeder andere autorisierte Benutzer, den Sie möchten) die ESP32-CAM mit Telegram steuern

Testen der Schaltung auf einem Steckbrett

Vor dem Entwerfen und Bauen der PCB-Abschirmung ist es wichtig, die Schaltung auf einem Steckbrett zu testen

Wenn Sie keine Leiterplatte herstellen möchten, können Sie diesem Projekt dennoch folgen, indem Sie die Schaltung auf einem Steckbrett zusammenbauen

Erforderliche Teile

Um die Schaltung auf einem Steckbrett zusammenzubauen, benötigen Sie folgende Teile:

Sie können die vorstehenden Links verwenden oder direkt zu MakerAdvisor.com/tools gehen, um alle Teile für Ihre Projekte zum besten Preis zu finden!

Nachdem Sie alle Teile gesammelt haben, bauen Sie die Schaltung zusammen, indem Sie dem nächsten schematischen Diagramm folgen:

Entwerfen der Leiterplatte

Um die Schaltung und die Leiterplatte zu entwerfen, haben wir EasyEDA verwendet, eine browserbasierte Software zum Entwerfen von Leiterplatten

Wenn Sie Ihre Leiterplatte anpassen möchten, müssen Sie nur die folgenden Dateien hochladen:

Das Entwerfen der Schaltung funktioniert wie in jedem anderen Schaltungssoftwaretool, Sie platzieren einige Komponenten und verdrahten sie miteinander

Anschließend weisen Sie jeder Komponente einen Footprint zu

Nachdem die Teile zugeordnet sind, platzieren Sie jede Komponente

Wenn Sie mit dem Layout zufrieden sind, stellen Sie alle Verbindungen her und verlegen Sie Ihre Leiterplatte

Speichern Sie Ihr Projekt und exportieren Sie die Gerber-Dateien

Hinweis: Sie können die Projektdateien abrufen und bearbeiten, um die Abschirmung an Ihre eigenen Bedürfnisse anzupassen

Bestellung der Leiterplatten bei PCBWay

Dieses Projekt wird von PCBWay gesponsert

PCBWay ist ein Full-Feature-Service für die Herstellung von Leiterplatten.

Verwandeln Sie Ihre DIY-Breadboard-Schaltungen in professionelle PCBs – erhalten Sie 10 Boards für ca

5 $ + Versand (der je nach Land variieren wird)

Sobald Sie Ihre Gerber-Dateien haben, können Sie die PCB bestellen

Befolgen Sie die nächsten Schritte, um die Datei herunterzuladen

1

Laden Sie die Gerber-Dateien herunter – klicken Sie hier, um die. zip-Datei herunterzuladen

2

Gehen Sie zur PCBWay-Website und öffnen Sie die PCB-Sofortangebotsseite

3

PCBWay kann alle PCB-Details erfassen und automatisch für Sie ausfüllen

Verwenden Sie die „Schnellbestellung PCB (Autofill-Parameter)“

4

Drücken Sie die Schaltfläche „+ Gerber-Datei hinzufügen“, um die bereitgestellten Gerber-Dateien hochzuladen

Sie können auch den OnlineGerberViewer verwenden, um zu überprüfen, ob Ihre Leiterplatte so aussieht, wie sie sollte

Wenn Sie es nicht eilig haben, können Sie die Versandmethode China Post verwenden, um Ihre Kosten erheblich zu senken

Unserer Meinung nach überschätzen sie die Lieferzeit von China Post

Sie können Ihre PCB-Bestellmenge erhöhen und die Farbe der Lötmaske ändern

Ich habe die blaue Farbe bestellt

Sobald Sie fertig sind, können Sie die PCBs bestellen, indem Sie auf “In den Warenkorb speichern” klicken und Ihre Bestellung abschließen

Unboxing

Nach ca

einer Woche mit DHL-Versand habe ich die Platinen in meinem Büro erhalten

Alles kommt gut verpackt an und die Platinen sind wirklich hochwertig

Die Buchstaben auf dem Siebdruck sind wirklich gut gedruckt und gut lesbar

Außerdem haftet das Lötzinn leicht an den Pads

Neben den Platinen habe ich auch einige Geschenke erhalten (zur Feier ihres 6-jährigen Bestehens): eine Plakette, einige Aufkleber, ein T-Shirt, einen Stift und einige Lineale

Löten der Komponenten

Der nächste Schritt ist das Löten der Komponenten auf die Leiterplatte

Sie müssen nur Buchsenleistenstifte anlöten

Der PIR-Bewegungssensor und der BME280 werden dann mit diesen Pins verbunden

Hier ist eine Liste aller Komponenten, die zum Aufbau des PCB-Schildes benötigt werden:

Hier sind die Lötwerkzeuge, die ich verwendet habe:

Lesen Sie unseren Testbericht über den TS80-Lötkolben: TS80-Lötkolben im Test – Bester tragbarer Lötkolben

Der Lötvorgang ist ziemlich einfach, da Sie nur die Stiftleisten anlöten müssen

In der Mitte des Schildes befinden sich einige exponierte GPIOs

Löten Sie Stifte an diese GPIOs, wenn Sie sie zum Anschließen anderer Peripheriegeräte verwenden möchten

So sieht das ESP32-CAM-PCB-Schild nach dem Zusammenbau aus

Die ESP32-CAM interagiert mit einem Telegram-Bot, um die Nachrichten zu empfangen und zu verarbeiten und Antworten an Ihr Telegram-Konto zu senden (Sensormesswerte und Fotos)

Befolgen Sie die nächsten Schritte, um einen Telegram-Bot zu erstellen

Gehen Sie zu Google Play oder App Store, laden Sie Telegram herunter und installieren Sie es

Öffnen Sie Telegram und folgen Sie den nächsten Schritten, um einen Telegram Bot zu erstellen

Suchen Sie zuerst nach „botfather“ und klicken Sie auf den Botfather, wie unten gezeigt

Oder öffnen Sie diesen Link t.me/botfather in Ihrem Smartphone

Das folgende Fenster sollte sich öffnen und Sie werden aufgefordert, auf die Schaltfläche „Start“ zu klicken

Geben Sie /newbot ein und folgen Sie den Anweisungen, um Ihren Bot zu erstellen

Geben Sie ihm einen Namen und einen Benutzernamen

Wenn Ihr Bot erfolgreich erstellt wurde, erhalten Sie eine Nachricht mit einem Link zum Zugriff auf den Bot und das Bot-Token

Bewahren Sie das Bot-Token auf, da Sie es benötigen, damit der ESP32/ESP8266 mit dem Bot interagieren kann

Holen Sie sich Ihre Telegramm-Benutzer-ID

Jeder, der Ihren Bot-Benutzernamen kennt, kann damit interagieren

Um sicherzustellen, dass wir Nachrichten ignorieren, die nicht von unserem Telegram-Konto (oder autorisierten Benutzern) stammen, können Sie Ihre Telegram-Benutzer-ID abrufen

Wenn Ihr Telegram-Bot dann eine Nachricht erhält, kann der ESP prüfen, ob die Absender-ID Ihrer Benutzer-ID entspricht, und die Nachricht bearbeiten oder ignorieren

Suchen Sie in Ihrem Telegram-Konto nach „IDBot“ oder öffnen Sie diesen Link t.me/ myidbot in Ihrem Smartphone

Beginnen Sie eine Unterhaltung mit diesem Bot und geben Sie /getid ein

Sie erhalten eine Antwort mit Ihrer Benutzer-ID zurück

Speichern Sie diese Benutzer-ID, da Sie sie später in diesem Tutorial benötigen

Vorbereiten der Arduino IDE

Wir programmieren die ESP32-CAM mit Arduino IDE, stellen Sie also sicher, dass Sie das ESP32-Add-On in Ihrer Arduino IDE installiert haben

Universal Telegram Bot Library

Um mit dem Telegram-Bot zu interagieren, verwenden wir die von Brian Lough erstellte universelle Telegram-Bot-Bibliothek, die eine einfache Schnittstelle für die Telegram-Bot-API bietet.

Befolgen Sie die nächsten Schritte, um die neueste Version der Bibliothek zu installieren

Klicken Sie hier, um die Universal Arduino Telegram Bot-Bibliothek herunterzuladen

Gehen Sie zu Sketch > Include Library > Add. ZIP Library. .

Fügen Sie die Bibliothek hinzu, die Sie gerade heruntergeladen haben

Und das war’s

Die Bibliothek ist installiert

Wichtig: Installieren Sie die Bibliothek nicht über den Arduino Library Manager, da dadurch möglicherweise eine veraltete Version installiert wird

Alle Details zur Bibliothek finden Sie auf der GitHub-Seite Universal Arduino Telegram Bot Library

ArduinoJson-Bibliothek

Sie müssen auch die ArduinoJson-Bibliothek installieren

Befolgen Sie die nächsten Schritte, um die Bibliothek zu installieren

Gehen Sie zu Sketch > Bibliothek einschließen > Bibliotheken verwalten

Suchen Sie nach „ArduinoJson“

Installieren Sie die Bibliothek

Wir verwenden die ArduinoJson-Bibliotheksversion 6.15.2.

BME280 SparkFun-Bibliothek

In den meisten unserer Projekte mit dem BME280-Sensor verwenden wir die Adafruit_BME280-Bibliothek

Es kollidiert jedoch mit einigen der ESP32-CAM-Bibliotheken

Um eine Änderung der Bibliotheksdateien zu vermeiden, haben wir stattdessen die BME280 Sparkfun-Bibliothek verwendet, die gut mit der ESP32-CAM funktioniert

Befolgen Sie die nächsten Schritte, um die BME280 Sparkfun-Bibliothek zu installieren

Gehen Sie zu Sketch > Bibliothek einschließen > Bibliotheken verwalten

Suchen Sie nach „Sparkfun BME280“

Installieren Sie die Bibliothek

Steuern Sie ESP32-CAM mit Telegram – Arduino Sketch

Die folgende Skizze ermöglicht es Ihnen, die ESP32-CAM über Ihr Telegram-Konto zu steuern

Sie erhalten auch eine Benachrichtigung mit einem Foto, wenn eine Bewegung erkannt wird

Kopieren Sie den folgenden Code in Ihre Arduino IDE

Damit es für Sie funktioniert, müssen Sie Ihre Netzwerkanmeldeinformationen (SSID und Passwort), Ihr Telegram Bot Token und Ihre Telegram User ID eingeben

/* Rui Santos Vollständige Projektdetails unter https://RandomNerdTutorials.com/esp32-cam -shield-pcb-telegram/ Projekt, das mit Brian Loughs Universal Telegram Bot Library erstellt wurde: https://github.com/witnessmenow/Universal-Arduino-Telegram-Bot Der obige Urheberrechtshinweis und dieser Genehmigungshinweis müssen in allen Kopien oder Inhalten enthalten sein Teile der Software

*/ #include #include #include “soc/soc.h” #include “soc/rtc_cntl_reg.h” #include “esp_camera.h” #include #include #include #include “SparkFunBME280.h” // Durch Ihre Netzwerkanmeldeinformationen ersetzen const char* ssid = “REPLACE_WITH_YOUR_SSID”; const char* password = “REPLACE_WITH_YOUR_PASSWORD”; // Verwenden Sie @myidbot, um die Chat-ID einer Einzelperson oder einer Gruppe herauszufinden // Beachten Sie auch, dass Sie bei einem Bot auf „Start“ klicken müssen, bevor er // Ihnen eine Nachricht senden kann String chatId = „XXXXXXXXXX“; // Telegramm BOT initialisieren String BOTtoken = “XXXXXXXXXX:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX”; bool sendPhoto = falsch; WiFiClientSicherer ClientTCP; UniversalTelegramBot bot (BOTtoken, clientTCP); // CAMERA_MODEL_AI_THINKER #define PWDN_GPIO_NUM 32 #define RESET_GPIO_NUM -1 #define XCLK_GPIO_NUM 0 #define SIOD_GPIO_NUM 26 #define SIOC_GPIO_NUM 27 #define Y9_GPIO_NUM 35 #define Y8_GPIO_NUM 34 #define Y7_GPIO_NUM 39 #define Y6_GPIO_NUM 36 #define Y5_GPIO_NUM 21 #define Y4_GPIO_NUM 19 #define Y3_GPIO_NUM 18 #define Y2_GPIO_NUM 5 #define VSYNC_GPIO_NUM 25 #define HREF_GPIO_NUM 23 #define PCLK_GPIO_NUM 22 #define FLASH_LED_PIN 4 bool flashState = LOW; // Bewegungssensor bool motionDetected = false; // I2C-Pins für BME280 definieren #define I2C_SDA 14 #define I2C_SCL 15 BME280 bme; int botRequestDelay = 1000; // mittlere Zeit zwischen Scan-Nachrichten long lastTimeBotRan; // Der letzte Scan der Nachrichten wurde durchgeführt void handleNewMessages(int numNewMessages); String sendPhotoTelegram(); // BME280-Sensormesswerte abrufen und als String-Variable zurückgeben String getReadings () { float temperature, Feuchtigkeit; Temperatur = bme.readTempC (); // Temperatur = bme.readTempF (); Feuchtigkeit = bme.readFloatHumidity (); String message = “Temperature: ” + String(temperature) + ” ºC

“; Nachricht += “Feuchtigkeit: ” + String (Feuchtigkeit) + ” %

“; Rückmeldung; } // Zeigt an, wenn Bewegung erkannt wird static void IRAM_ATTR detectsMovement(void * arg){ //Serial.println(“MOTION DETECTED!!!”); motionDetected = true; } void setup(){ WRITE_PERI_REG( RTC_CNTL_BROWN_OUT_REG, 0); Serial.begin (115200); pinMode (FLASH_LED_PIN, OUTPUT); digitalWrite (FLASH_LED_PIN, flashState); // Init BME280 Sensor Wire.begin (I2C_SDA, I2C_SCL); bme.settings.commInterface = I2C_MODE; bme

settings.I2CAddress = 0x76; bme.settings.runMode = 3; bme.settings.tStandby = 0; bme.settings.filter = 0; bme.settings.tempOverSample = 1; bme.settings.pressOverSample = 1; bme.settings

HumidOverSample = 1; bme.begin(); WiFi.mode(WIFI_STA); Serial.println(); Serial.print(“Verbindung mit “); Serial.println(ssid); WiFi.begin(ssid, Passwort); clientTCP. setCACert(TELEGRAM_CERTIFICATE_ROOT); // Wurzelzertifikat für api.telegram.org hinzufügen while (WiFi.status() != WL_CONNECTED) { Serial.print(“.”); delay(500); } Serial.println(); Serial.print (“ESP32-CAM-IP-Adresse: “); Serial.pri ntln (WiFi.localIP()); camera_config_t config; config.ledc_channel = LEDC_CHANNEL_0; config.ledc_timer = LEDC_TIMER_0; config.pin_d0 = Y2_GPIO_NUM; config.pin_d1 = Y3_GPIO_NUM; config.pin_d2 = Y4_GPIO_NUM; config.pin_d3 = Y5_GPIO_NUM; config.pin_d4 = Y6_GPIO_NUM; config.pin_d5 = Y7_GPIO_NUM; config.pin_d6 = Y8_GPIO_NUM; config.pin_d7 = Y9_GPIO_NUM; config.pin_xclk = XCLK_GPIO_NUM; config.pin_pclk = PCLK_GPIO_NUM; config.pin_vsync = VSYNC_GPIO_NUM; config.pin_href = HREF_GPIO_NUM; config.pin_sscb_sda = SIOD_GPIO_NUM; config.pin_sscb_scl = SIOC_GPIO_NUM; config.pin_pwdn = PWDN_GPIO_NUM; config.pin_reset = RESET_GPIO_NUM; config.xclk_freq_hz = 20000000; config.pixel_format = PIXFORMAT_JPEG; //Init mit hohen Spezifikationen, um größere Puffer vorab zuzuweisen if(psramFound()){ config.frame_size = FRAMESIZE_UXGA; config.jpeg_quality = 10; //0-63 niedrigere Zahl bedeutet höhere Qualität config.fb_count = 2; } Else { config.frame_size = FRAMESIZE_SVGA; config.jpeg_quality = 12; //0-63 niedrigere Zahl bedeutet höhere Qualität config.fb_count = 1; } // Kamera init esp_err_t err = esp_camera_init(&config); if (err != ESP_OK) {Serial.printf (“Camera init failed with error 0x%x”, err); Verzögerung (1000); ESP.restart (); } // Drop-down-Bildgröße für höhere anfängliche Bildrate sensor_t * s = esp_camera_sensor_get (); s->set_framesize(s, FRAMESIZE_CIF); // UXGA|SXGA|XGA|SVGA|VGA|CIF|QVGA|HQVGA|QQVGA // PIR-Bewegungssensormodus INPUT_PULLUP //err = gpio_install_isr_service(0); Fehler = gpio_isr_handler_add (GPIO_NUM_13, &detectsMovement, (void *) 13); if (err != ESP_OK){Serial.printf(“Hinzufügen des Handlers fehlgeschlagen mit Fehler 0x%x \r

“, err); } Fehler = gpio_set_intr_type (GPIO_NUM_13, GPIO_INTR_POSEDGE); if (err != ESP_OK) {Serial.printf (“set intr type failed with error 0x%x \r

“, err); }} void loop(){ if (sendPhoto){Serial.println(“Foto vorbereiten”); sendPhotoTelegram(); sendPhoto = falsch; } if(motionDetected){ bot.sendMessage(chatId, “Bewegung erkannt!!”, “”); Seriell

println(“Bewegung erkannt”); sendPhotoTelegram(); motionDetected = falsch; } if (millis() > lastTimeBotRan + botRequestDelay) {int numNewMessages = bot.getUpdates (bot.last_message_received + 1); While (numNewMessages) { Serial.println ( “Antwort erhalten”); handleNewMessages(numNewMessages); numNewMessages = bot.getUpdates(bot.last_message_received + 1); } lastTimeBotRan = millis(); } } String sendPhotoTelegram(){ const char* myDomain = “api.telegram.org”; String getAll = “”; Zeichenfolge getBody = “”; camera_fb_t * fb = NULL; fb = esp_camera_fb_get(); if (! fb) { Serial.println ( “Kameraaufnahme fehlgeschlagen”); Verzögerung (1000); ESP.restart (); Rückgabe “Kameraaufnahme fehlgeschlagen”; } Serial.println (“Verbinden mit” + String (myDomain)); if (clientTCP.connect(myDomain, 443)) {Serial.println(“Verbindung erfolgreich”); String head = “–RandomNerdTutorials\r

Content-Disposition: form-data; name=\”chat_id\”; \r

\r

” + chatId + “\r

–RandomNerdTutorials\r

Content-Disposition: form-data; name=\”photo\”; filename=\”esp32-cam.jpg\”\r

Content-Type: image/jpeg\r

\r

“; String tail = “\r

–RandomNerdTutorials–\r

“; uint16_t imageLen = fb->len; uint16_t extraLen = head.length() + tail.length(); uint16_t totalLen = imageLen + extraLen; clientTCP.println(“POST /bot”+BOTtoken+”/sendPhoto HTTP/1.1” ); clientTCP.println(“Host: ” + String(myDomain)); clientTCP.println(“Content-Length: ” + String(totalLen)); clientTCP.println(“Content-Type: multipart/form-data; border =RandomNerdTutorials”); clientTCP.println(); clientTCP.print(head); uint8_t *fbBuf = fb->buf; size_t fbLen = fb->len; for (size_t n=0;n0) { size_t rest = fbLen%1024; clientTCP.write(fbBuf, rest ); } } clientTCP.print(tail); esp_camera_fb_return(fb); int waitTime = 10000; // Timeout 10 Sekunden lang startTimer = millis(); boolescher Zustand = false; while ((startTimer + waitTime) > millis() ) {Serial.print(“.”); delay(100); while (clientTCP.available()) { char c = clientTCP.read(); if (state==true) getBody += String(c); if ( c == ‘

‘) { if (getAll.length()==0) state=true; getAll = “”; } else if (c != ‘\r’) getAll += String(c); startTimer = millis (); } if (getBody.length()>0) Pause; } clientTCP.stop(); Seriell

println(getBody); } else { getBody=”Verbindung mit api.telegram.org fehlgeschlagen.”; Serial.println(“Verbindung mit api.telegram.org fehlgeschlagen.”); } getBody zurückgeben; } void handleNewMessages (int numNewMessages) { Serial.print ( “Neue Nachrichten verarbeiten: “); Serial.println (numNewMessages); for (int i = 0; i < numNewMessages; i++){ // Chat-ID des Anfragenden String chat_id = String(bot.messages[i].chat_id); if (chat_id != chatId){ bot.sendMessage(chat_id, "Nicht autorisierter Benutzer", ""); fortsetzen; } // Drucken der empfangenen Nachricht String text = bot.messages[i].text; Seriell

println(Text); String fromName = bot.messages[i].from_name; if (text == “/flash”) { flashState = !flashState; DigitalWrite (FLASH_LED_PIN, FlashState); } if (text == “/foto”) { sendPhoto = true; Seriell

println(“Neue Fotoanfrage”); } if (text == “/readings”){ String readings = getReadings(); bot.sendMessage (chatId, Messwerte, “”); } if (text == “/start”){ String welcome = “Willkommen beim ESP32-CAM Telegram bot.

“; welcome += “/photo : nimmt ein neues Foto auf

“; welcome += “/flash : Blitz-LED umschalten

“; welcome += “/readings : Sensormesswerte anfordern

“; welcome += “Sie erhalten ein Foto, wenn eine Bewegung erkannt wird.

“; bot.sendMessage(chatId, willkommen, “Markdown”); } } }

Rohcode anzeigen

Wie der Kodex funktioniert

Lesen Sie weiter, um zu erfahren, wie der Code funktioniert, oder fahren Sie mit dem nächsten Abschnitt fort

Importieren von Bibliotheken

Beginnen Sie mit dem Importieren der erforderlichen Bibliotheken UniversalTelegramBot.h> #include #include #include “SparkFunBME280.h”

Netzwerkanmeldeinformationen

Fügen Sie Ihre Netzwerkanmeldeinformationen in die folgenden Variablen ein

const char* ssid = “REPLACE_WITH_YOUR_SSID”; const char* password=”REPLACE_WITH_YOUR_PASSWORD”;

Telegramm-Benutzer-ID

Fügen Sie Ihre Telegramm-Chat-ID in die Variable chatId ein

Die, die Sie vom IDBot bekommen haben.

String chatId = “XXXXXXXXXX”;

Telegramm-Bot-Token

Fügen Sie Ihr Telegramm-Bot-Token, das Sie von Botfather erhalten haben, in die BOTtoken-Variable ein

String BOTtoken = “XXXXXXXXXX:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX”;

Die boolesche Variable sendPhoto gibt an, ob es an der Zeit ist, ein neues Foto an Ihr Telegram-Konto zu senden

Standardmäßig ist es auf false gesetzt

bool sendPhoto = false;

Erstellen Sie einen neuen WLAN-Client mit WiFiClientSecure.

WiFiClientSecure clientTCP;

Erstellen Sie einen Bot mit dem zuvor definierten Token und Client.

UniversalTelegramBot bot(BOTtoken, clientTCP);

Kamerastifte

Definieren Sie die von der ESP32-CAM verwendeten Pins:

// CAMERA_MODEL_AI_THINKER #define PWDN_GPIO_NUM 32 #define RESET_GPIO_NUM -1 #define XCLK_GPIO_NUM 0 #define SIOD_GPIO_NUM 26 #define SIOC_GPIO_NUM 27 #define Y9_GPIO_NUM 35 #define Y8_GPIO_NUM 34 #define Y7_GPIO_NUM 39 #define Y6_GPIO_NUM 36 #define Y5_GPIO_NUM 21 #define Y4_GPIO_NUM 19 #define Y3_GPIO_NUM 18 #define Y2_GPIO_NUM 5 #define VSYNC_GPIO_NUM 25 #define HREF_GPIO_NUM 23 #define PCLK_GPIO_NUM 22

Dies ist die Pin-Definition für das AI-Thinker-Board

Wenn Sie ein anderes Kameramodell verwenden, überprüfen Sie die Pinbelegung für Ihr Board: ESP32-CAM Kameraplatinen: Leitfaden zur Pin- und GPIO-Zuweisung

Blitz-LED

Erstellen Sie eine Variable, um den Flash-LED-Pin (FLASH_LED_PIN) zu halten

Im ESP32-CAM AI‑Thinker ist der Blitz mit GPIO 4 verbunden

Standardmäßig auf LOW setzen.

#define FLASH_LED_PIN 4 bool flashState = LOW;

Bewegungssensor

Die Variable motionDetected gibt an, ob eine Bewegung erkannt wurde

Es ist standardmäßig auf false gesetzt

bool motionDetected = false;

BME280

Definieren Sie die SDA- und SCL-Pins, die mit dem BME280 verwendet werden sollen.

#define I2C_SDA 14 #define I2C_SCL 15

Erstellen Sie eine BME280-Instanz namens bme.

BME280 bme;

Anfrageverzögerung

Die Variablen botRequestDelay und lasTimeBotRan werden verwendet, um alle x Sekunden nach neuen Telegram-Nachrichten zu suchen

In diesem Fall sucht der Code jede Sekunde (1000 Millisekunden) nach neuen Nachrichten

Sie können diese Verzögerungszeit in der Variablen botRequestDelay ändern

int botRequestDelay = 1000; // mittlere Zeit zwischen Scan-Nachrichten long lastTimeBotRan; // Der Scan der letzten Nachrichten wurde durchgeführt

handleNewMessages()

Die Funktion handleNewMessages() behandelt, was passiert, wenn neue Nachrichten eintreffen

void handleNewMessages(int numNewMessages){ Serial.print(“Handle New Messages: “); Serial.println (numNewMessages);

Rufen Sie die Chat-ID für diese bestimmte Nachricht ab und speichern Sie sie in der Variablen chat_id

Die Chat-ID gibt an, wer die Nachricht gesendet hat

String chat_id = String(bot.messages[i].chat_id);

Wenn sich die chat_id von Ihrer Chat-ID (chatId) unterscheidet, bedeutet dies, dass jemand (das sind nicht Sie) eine Nachricht an Ihren Bot gesendet hat

Wenn das der Fall ist, ignorieren Sie die Nachricht und warten Sie auf die nächste Nachricht.

if (chat_id != chatId){ bot.sendMessage(chat_id, “Unauthorized user”, “”); fortsetzen; }

Andernfalls bedeutet dies, dass die Nachricht von einem gültigen Benutzer gesendet wurde, also speichern wir sie in der Textvariablen und überprüfen ihren Inhalt

String text = bot.messages[i].text; Serial.println (Text);

Die Variable from_name speichert den Namen des Absenders

String fromName = bot.messages[i].from_name;

Wenn es die /flash-Nachricht empfängt, invertieren Sie die flashState-Variable und aktualisieren Sie den Flash-LED-Status

Wenn es zuvor LOW war, setzen Sie es auf HIGH

Wenn es vorher HIGH war, setze es auf LOW.

if (text == “/flash”) { flashState = !flashState; DigitalWrite (FLASH_LED_PIN, FlashState); }

Wenn es die /photo-Nachricht erhält, setzen Sie die sendPhoto-Variable auf true

Dann prüfen wir in der Schleife () den Wert der sendPhoto-Variablen und gehen entsprechend vor

if (text == “/photo”) { sendPhoto = true; Seriell

println(“Neue Fotoanfrage”); }

Wenn er die Nachricht /readings erhält, rufen Sie die Funktion getReadings() auf (wir werden uns diese Funktion später ansehen) und senden Sie die Messwerte an den Bot

if (text == “/readings”){ String readings = getReads(); bot.sendMessage (chatId, Messwerte, “”); }

Das Senden einer Nachricht an den Bot ist sehr einfach

Sie müssen nur die Methode sendMessage() für das Bot-Objekt verwenden und als Argumente die Chat-ID des Empfängers, die Nachricht und den Analysemodus übergeben

bool sendMessage(String chat_id, String text, String parse_mode = “”)

Wenn es schließlich die /start-Nachricht erhält, senden wir die gültigen Befehle zur Steuerung des ESP

Dies ist nützlich, wenn Sie die Befehle zur Steuerung Ihres Boards vergessen haben.

if (text == “/start”){ String welcome = “Welcome to the ESP32-CAM Telegram bot.

“; welcome += “/photo : nimmt ein neues Foto auf

“; welcome += “/flash : Blitz-LED umschalten

“; welcome += “/readings : Sensormesswerte anfordern

“; welcome += “Sie erhalten ein Foto, wenn eine Bewegung erkannt wird.

“; bot.sendMessage(chatId, willkommen, “Markdown”); }

sendPhotoTelegramm()

Die Funktion sendPhotoTelegram() nimmt ein Foto mit der ESP32-CAM auf.

camera_fb_t * fb = NULL; fb = esp_camera_fb_get(); if (! fb) { Serial.println ( “Kameraaufnahme fehlgeschlagen”); Verzögerung (1000); ESP.restart (); Rückgabe “Kameraaufnahme fehlgeschlagen”; }

Dann macht es eine HTTP-POST-Anforderung, um das Foto an Ihren Telegram-Bot zu senden

clientTCP.println(“POST /bot”+BOTtoken+”/sendPhoto HTTP/1.1”); clientTCP.println(“Host: ” + String(myDomain)); clientTCP.println(“Inhaltslänge: ” + String(totalLen)); clientTCP.println(“Inhaltstyp: Multipart/Formulardaten; Grenze=RandomNerdTutorials”); clientTCP.println(); clientTCP.print(head);

getReads()

Die Funktion getReadings() fordert Temperatur und Luftfeuchtigkeit vom BME280-Sensor an

String getReadings(){ float temperature, Humidity; Temperatur = bme.readTempC (); // Temperatur = bme.readTempF (); Feuchtigkeit = bme.readFloatHumidity();

Die Messwerte werden in der Message-Variablen verkettet, die von der Funktion zurückgegeben wird

String message = “Temperature: ” + String(temperature) + ” ºC

“; Nachricht += “Feuchtigkeit: ” + String (Feuchtigkeit) + ” %

“; Rückmeldung;

erkenntBewegung()

detectsMovement() ist eine Callback-Funktion, die aufgerufen wird, wenn eine Bewegung erkannt wird

In diesem Fall setzen wir die Variable motionDetected auf true

Dann werden wir in der Schleife () behandeln, was passiert, wenn es Bewegung gibt (sendet ein Foto)

Statisch void IRAM_ATTR detectsMovement (void * arg) {// Serial.println ( “MOTION DETECTED !!!”); motionDetected = wahr; }

Einrichten()

Initialisieren Sie in setup() den Serial Monitor.

Serial.begin(115200);

Stellen Sie die Flash-LED als Ausgang ein und setzen Sie sie in ihren Anfangszustand

PinMode (FLASH_LED_PIN, OUTPUT); digitalWrite (FLASH_LED_PIN, flashState);

Initialisieren Sie den BME280-Sensor:

// Init BME280 Sensor Wire.begin (I2C_SDA, I2C_SCL); bme.settings.commInterface = I2C_MODE; bme.settings.I2CAddress = 0x76; bme.settings.runMode = 3; bme.settings.tStandby = 0; bme.settings.filter = 0; bme.settings.tempOverSample = 1; bme.settings.pressOverSample = 1; bme.settings.humidOverSample = 1; bme.begin();

Verbinden Sie Ihre ESP32-CAM mit Ihrem lokalen Netzwerk

WiFi.mode(WIFI_STA); Serial.println (); Serial.print (“Verbinden mit”); Serial.println (ssid); WiFi.begin (ssid, Passwort); Während (WiFi.status ()! = WL_CONNECTED) { Serial.print ( “.”); Verzögerung (500); } Serial.println (); Serial.print (“ESP32-CAM-IP-Adresse: “); Serial.println (WiFi.localIP());

Konfigurieren und initialisieren Sie die Kamera.

camera_config_t config; config.ledc_channel = LEDC_CHANNEL_0; config.ledc_timer = LEDC_TIMER_0; config.pin_d0 = Y2_GPIO_NUM; config.pin_d1 = Y3_GPIO_NUM; config.pin_d2 = Y4_GPIO_NUM; config.pin_d3 = Y5_GPIO_NUM; config.pin_d4 = Y6_GPIO_NUM; config.pin_d5 = Y7_GPIO_NUM; config.pin_d6 = Y8_GPIO_NUM; config.pin_d7 = Y9_GPIO_NUM; config.pin_xclk = XCLK_GPIO_NUM; config.pin_pclk = PCLK_GPIO_NUM; config.pin_vsync = VSYNC_GPIO_NUM; config.pin_href = HREF_GPIO_NUM; config.pin_sscb_sda = SIOD_GPIO_NUM; config.pin_sscb_scl = SIOC_GPIO_NUM; config.pin_pwdn = PWDN_GPIO_NUM; config.pin_reset = RESET_GPIO_NUM; config.xclk_freq_hz = 20000000; config.pixel_format = PIXFORMAT_JPEG; //Init mit hohen Spezifikationen, um größere Puffer vorab zuzuweisen if(psramFound()){ config.frame_size = FRAMESIZE_UXGA; config.jpeg_quality = 10; //0-63 niedrigere Zahl bedeutet höhere Qualität config.fb_count = 2; } Else { config.frame_size = FRAMESIZE_SVGA; config.jpeg_quality = 12; //0-63 niedrigere Zahl bedeutet höhere Qualität config.fb_count = 1; } // Kamera init esp_err_t err = esp_camera_init(&config); if (err != ESP_OK) {Serial.printf (“Camera init failed with error 0x%x”, err); Verzögerung (1000); ESP.restart (); } // Drop-down-Bildgröße für höhere anfängliche Bildrate sensor_t * s = esp_camera_sensor_get (); s->set_framesize(s, FRAMESIZE_CIF); // UXGA|SXGA|XGA|SVGA|VGA|CIF|QVGA|HQVGA|QQVGA

Richten Sie einen Interrupt auf GPIO 13 ein:

Fehler = gpio_isr_handler_add (GPIO_NUM_13, &detectsMovement, (void *) 13); if (err != ESP_OK){Serial.printf(“Hinzufügen des Handlers fehlgeschlagen mit Fehler 0x%x \r

“, err); } err = gpio_set_intr_type(GPIO_NUM_13, GPIO_INTR_POSEDGE); if (err != ESP_OK){Serial.printf(“set intr type failed with error 0x%x \r.”, err); }

loop(). Überprüfen Sie in der Schleife () den Status der sendPhoto-Variablen

Wenn dies der Fall ist, rufen Sie die Funktion sendPhotoTelegram () auf, um ein Foto aufzunehmen und an Ihr Telegrammkonto zu senden

if (sendPhoto) { Serial.println ( “Foto wird vorbereitet “); sendPhotoTelegram(); sendPhoto = false; }

Wenn es fertig ist, setze die Variable sendPhoto auf false.

sendPhoto = false;

Wenn eine Bewegung erkannt wird, sende eine Benachrichtigung an dein Telegram-Konto und rufe die Funktion senPhototoTelegram() auf

Setzen Sie dann die Variable „motionDetected“ auf „false“

}

Jede Sekunde nach neuen Telegram-Nachrichten suchen.

if (millis() > lastTimeBotRan + botRequestDelay){ int numNewMessages = bot.getUpdates(bot.last_message_received + 1);while (numNewMessages){ S erial

println(“erhaltene Antwort”); handleNewMessages(numNewMessages); numNewMessages = bot.getUpdates(bot.last_message_received + 1); } lastTimeBotRan = millis(); }

Rufen Sie beim Eintreffen einer neuen Nachricht die Funktion handleNewMessages() auf

while (numNewMessages){ Serial.println(“got response”); handleNewMessages(numNewMessages); numNewMessages = bot.getUpdates(bot.last_message_received + 1); }

So ungefähr funktioniert der Code

Code auf die ESP32-CAM hochladen

Nachdem Sie die erforderlichen Änderungen vorgenommen haben, laden Sie den Code auf Ihre ESP32-CAM hoch (bevor Sie das Schild anschließen)

Befolgen Sie die nächsten Schritte, um Code hochzuladen, oder folgen Sie diesem Tutorial: So laden Sie Code auf die ESP32-CAM hoch

1) Verdrahten Sie die ESP32-CAM mit dem FTDI-Programmierer, wie im folgenden Diagramm gezeigt Das Diagramm stimmt möglicherweise nicht mit Ihrem überein

Stellen Sie sicher, dass Sie das Siebdrucketikett neben jedem Pin überprüfen

Wichtig: GPIO 0 muss mit GND verbunden sein, damit Sie Code hochladen können

2) Gehen Sie zu Tools > Board und wählen Sie AI-Thinker ESP32-CAM

Sie müssen das ESP32-Addon installiert haben

Andernfalls wird dieses Board nicht im Boards-Menü angezeigt

3) Gehen Sie zu Tools > Port und wählen Sie den COM-Port aus, mit dem die ESP32-CAM verbunden ist

4) Klicken Sie dann auf die Schaltfläche Upload in Ihrer Arduino IDE

5) Wenn Sie beginnen, einige Punkte im Debugging-Fenster zu sehen, drücken Sie die ESP32-CAM-On-Board-RST-Taste

Nach einigen Sekunden sollte der Code erfolgreich auf Ihr Board hochgeladen werden

6) Wenn Sie die Meldung „Done Uploading“-Meldung, entfernen Sie GPIO 0 von GND

Öffnen Sie den Serial Monitor, drücken Sie die integrierte RST-Taste und überprüfen Sie, ob die ESP32-CAM problemlos mit Ihrem Netzwerk verbunden ist

Demonstration

Bringen Sie mit dem auf Ihre ESP32-CAM hochgeladenen Code die PCB-Abschirmung und alle Komponenten an

Legen Sie Strom mit den 5-V- und GND-Pins auf der Abschirmung an

Drücken Sie dann die RST-Taste der ESP32-CAM, damit der Code ausgeführt wird

Eröffnen Sie jetzt Ihr Telegram-Konto und testen Sie Ihr Board

Senden Sie die folgenden Nachrichten an Ihren ESP32-Telegram-Bot, um Ihre ESP32-CAM zu steuern:

/start : sendet eine Willkommensnachricht mit den gültigen Befehlen zur Steuerung des Schildes;

: sendet eine Willkommensnachricht mit den gültigen Befehlen zur Steuerung des Schildes; /flash : Schaltet den LED-Blitz der ESP32-CAM um;

: schaltet den ESP32-CAM-LED-Blitz um; /photo : Nimmt ein neues Foto auf und sendet es an Ihr Telegram-Konto;

: nimmt ein neues Foto auf und sendet es an Ihr Telegram-Konto; /readings: Fordert die neuesten Messwerte des BME280-Sensors an

Außerdem erhalten Sie eine Benachrichtigung mit einem Foto, wenn eine Bewegung erkannt wird

Wenn Sie versuchen, mit Ihrem Bot von einem anderen Konto aus zu interagieren, erhalten Sie die Meldung „Nicht autorisierter Benutzer“

Nachricht.

Zusammenfassung

In diesem Tutorial haben wir eine PCB-Abschirmung für die ESP32-CAM mit einem PIR-Bewegungssensor und BME280 erstellt

Dadurch entsteht eine dauerhaftere Schaltung auf kleinem Raum, die Sie in ein kleines Gehäuse oder eine Dummy-Kamera einbauen können

Sie haben auch gelernt, wie Sie Ihr Telegram-Konto verwenden, um Ihre ESP32-CAM mit einem Telegram-Bot zu steuern

Dadurch können Sie Ihr Board von überall aus steuern und überwachen, solange Sie in Ihrem Smartphone Internetzugang haben.

Sie können auch Ihren eigenen Code erstellen, um andere Aufgaben mit dem Schild zu erledigen

Wir haben andere ähnliche Projekte, die das Erstellen und Entwerfen von Leiterplatten beinhalten, die Ihnen gefallen könnten:

Erfahren Sie mehr über die ESP32-CAM mit unseren Ressourcen:

Wir verschenken 5 blanke PCBs an jemanden, der unten einen Kommentar postet (es kann bis zu 24 Stunden dauern, bis Kommentare genehmigt werden)! Hinterlassen Sie einfach einen Kommentar in diesem Blog-Beitrag darüber, was Sie gerne mit der Leiterplatte machen würden, und nehmen Sie an der Chance teil, eine dieser unbestückten Leiterplatten zu gewinnen

Wir bestätigen derzeit die Gewinner und werden sie an diesem Wochenende (22

August) bekannt geben

Bleib dran! [Update] Das Gewinnspiel endete und die Gewinner sind: Gerald Maurer, Jason Wilkins, Svein Utne, Domenico Carvetta und João Paulo.

[ioBroker] Automatischer Neustart (CronTab) [Tutorial] [HD] New

Video unten ansehen

Neue Informationen zum Thema iobroker restart raspberry

Dank eines Super Schrifttutorials von einem Member unserer SmartHome Community kann ich euch heute zeigen wie man den ioBroker jede Nacht um 04:00 Uhr Automatisch Neustarten lässt, somit wird der Cache geleert und der ioBroker ist wieder \”Frisch für die nächsten 24 Stunden\”.
Vielen Dank an diese tolle Community 🙂
Falls Ihr noch keinen ioBroker auf einem Raspberry Pi habt, Ihr benötigt dafür folgende Hardware…
✪ Raspberry Pi
https://dealheros.de/produkt/raspberry-pi-3-modell-b-plus-b-ultimatives-starterkit-mit-32gb-micro-sd-karte-schaltnetzteil-%e2%9c%aa/
✪ Raspberry Pi Netzteil
https://amzn.to/2Rk2Y43
✪ SanDisk MicroSD (16GB)
https://amzn.to/3aWvrVo
Und dieses Tutorial hier…
https://youtu.be/cThlN8In9mk
Link zum Schrifttutorial im Forum…
https://schimmer-media.de/forum/index.php?thread/174-raspberry-regelm%C3%A4%C3%9Fig-rebooten/
****************************************************************
✪ Alle Links die mit einem ✪ gekennzeichnet wurden, sind Affiliate Links, das bedeutet das Ihr dafür nicht mehr zahlen müsst und gleichzeitig meinen Kanal unterstützt, weil ich eine Provision erhalte.
Schimmer-Media auf Twitch
https://smedia.click/Twitch
Schimmer-Media auf Facebook
https://www.facebook.com/schimmermedia
SchimmerMediaHD auf Instagram
https://smedia.click/Instagram
SchimmerMediaHD Facebook Gruppe
https://smedia.click/Facebook
Ich hoffe euch hat das Video gefallen 🙂

iobroker restart raspberry Einige Bilder im Thema

 Update  [ioBroker] Automatischer Neustart (CronTab) [Tutorial] [HD]
[ioBroker] Automatischer Neustart (CronTab) [Tutorial] [HD] New

FAQ – Tasmota Neueste

FAQ Wi-Fi~ Cannot connect to Wi-Fi~. If your device does not connect to your Wi-Fi and you’ve made sure the Wi-Fi credentials are correct, it is caused by using special chars or white spaces in your SSID or Password of your Wi-Fi.

+ mehr hier sehen

Read more

FAQ

Es kann keine Verbindung zu Wi-Fi~ hergestellt werden

Wenn Ihr Gerät keine Verbindung zu Ihrem WLAN herstellt und Sie sichergestellt haben, dass die WLAN-Anmeldeinformationen korrekt sind, wird dies durch die Verwendung von Sonderzeichen oder Leerzeichen in Ihrer SSID oder Ihrem WLAN-Passwort verursacht

Entfernen Sie sie und versuchen Sie es erneut

Ein anderer Grund kann die Verwendung einer SSID sein, die länger als die zulässigen 32 Zeichen ist

Bei einigen Wi-Fi-Routern (z

B

Linksys mit DD-WRT) können Konflikte mit dem 5-GHz-Funk auftreten

Wählen Sie nicht die Option “Gemischt”

Wählen Sie stattdessen “AC/N Mixed”

Außerdem sollten Sie während des Konfigurationsprozesses wahrscheinlich das 5-GHz-Funkgerät trennen

DD-WRT hat standardmäßig auch Wi-Fi Multi-Media (WMM) aktiviert

Durch das Deaktivieren von WMM können Verbindungsprobleme behoben werden

Einige Tasmota-Geräte haben auch Probleme mit OFDMA (WiFi 6), das im 2,4-GHz-Band aktiviert ist

Das Deaktivieren von OFDMA kann Probleme mit WLAN-Verbindungsproblemen lösen

Ich habe falsche WLAN-Informationen eingegeben~

Wenn Sie ein Gerät mit einer Taste haben und die Taste als Komponente in den Tasmota-Einstellungen konfiguriert ist (z

B

GPIO0 – Taste1), können Sie versuchen, die Taste zu drücken, um das Gerät mit 4 kurzen Drücken von in den Wi-Fi-Konfigurationsmodus zu zwingen Tasten

Hinweis: Seit Version 8.3.0 erfordert dies stattdessen 6 kurze Drücken

Wenn dies nicht funktioniert hat, setzen Sie Ihr Gerät mit Fast Power Cycle Device Recovery zurück

Wenn Sie sich nicht sicher sind, welche SSID Sie eingegeben haben, können Sie versuchen, diese mit speziellen Wi-Fi-Sniffing-Tools herauszufinden

Zum Beispiel kann Nirsoft WifiChannelMonitor Ihren fälschlicherweise konfigurierten SSID-Namen anzeigen

Beispiel für ein Linux-System:

apt installiere aircrack-ng Wireshark airmon-ng check kill airmon-ng starte (z.B

wlp58s0 oder wlan0) Wireshark

Wenn diese Methoden nicht funktionieren, ist es möglicherweise immer noch möglich, das Gerät zu speichern, ohne es zu öffnen, um einen seriellen Flash durchzuführen

Da Tasmota GET-Anforderungen für Formulare verwendet, befindet sich das Passwort möglicherweise in Ihrem Browserverlauf

Suchen Sie in Ihrem Browserverlauf nach 192.168.4.1 (oder einer anderen Adresse, die Sie für die Konfiguration verwendet haben)

Es sollte einen ähnlichen Eintrag wie diesen geben:

http://192.168.4.1/wi?s1=&p1=-********&s2=&p2=********&h=hostName&save= s1 ist Ihr erster AP SSID

ist Ihre erste AP-SSID

p1 ist das erste AP-Passwort

ist das erste AP-Passwort s2 und p2 sind die gleichen Parameter, aber für den zweiten AP

und sind die gleichen Parameter, aber für den zweiten AP ist h der Hostname, der dem Gerät von der Tasmota-Konfiguration gegeben wurde

ist der Hostname, der dem Gerät von der Tasmota-Konfiguration gegeben wurde Nachdem Sie die falsch eingegebene Konfiguration von dieser URL erhalten haben, konfigurieren Sie einen Zugriffspunkt mit diesen Einstellungen wie oben beschrieben

Greifen Sie auf Ihr Gerät zu und legen Sie die richtigen WLAN-Anmeldeinformationen fest

Wenn Sie eine Glühbirne oder ein Gerät ohne integrierte Taste zum Blinken gebracht und ein falsches Wi-Fi-Passwort eingegeben haben, haben Sie jetzt ein Gerät, das sich nicht mit Ihrem Wi-Fi verbindet, und Sie haben keine Taste, um es in die Wi-Fi-Konfiguration zu zwingen mode.

Dieser Tipp nutzt ein Sicherheitsrisiko, das in Arduino Cores vor 2.6.0 vorhanden ist

Es funktioniert nicht mit Tasmota-Binärdateien, die mit 2.6.0 oder höher kompiliert wurden

Um dies zu lösen, können Sie versuchen, einen neuen Wi-Fi-AP mit derselben SSID und ohne (keine) Authentifizierung zu erstellen

Verwenden Sie einen alten Router, ein Mobiltelefon oder ändern Sie, wenn Sie verzweifelt sind, die Einstellungen auf Ihrem Hauptrouter (aber denken Sie daran, die Authentifizierung wieder einzuschalten, wenn Sie fertig sind)

Je nach Router/Telefon ignoriert es das falsche Wi-Fi-Passwort, da die Authentifizierung auf „Keine“ eingestellt ist, und lässt Ihr Tasmota-geflashtes Gerät eine Verbindung dazu herstellen Passwort, geben Sie einige einfache Informationen für SSID2 ein, die Sie als Hotspot auf Ihrem Telefon erstellen und speichern können.

Das Gerät trennt häufig die Verbindung zum WLAN~

Das erste, was Sie bei Wi-Fi-Problemen versuchen sollten: Reset 3, wodurch nur die Wi-Fi-Kalibrierungsdaten gelöscht werden und die Konfiguration intakt bleibt

Stellen Sie sicher, dass Sie danach den Einschaltzyklus neu starten

Wenn das nicht hilft, versuchen Sie auch, den Router neu zu starten

Als letzten Ausweg versuchen Sie Folgendes: Löschen Sie den gesamten Flash mit esptool.py oder esptool.exe und flashen Sie über seriell (wie hier erklärt) mit den neuesten vorkompilierten Binärdateien.

Dieser Ansatz hat viele der gemeldeten Probleme gelöst

Manchmal liegt dies an einem fehlerhaften Flash, einem fehlerhaften OTA oder ungültigen Daten, die im Flash verbleiben, in dem sich der SDK-Speicher befindet

Wenn Sie weiterhin Probleme haben, sollten Sie in Ihrem Wi-Fi-Netzwerk nachsehen:

Bei einigen neuen Routern sind viele moderne Funktionen standardmäßig aktiviert, die mit dem alten ESP82xx-Chip nicht gut funktionieren

Deaktivieren Sie das Surfen auf Kanälen, den Bandwechsel und ähnliche Funktionen

Überprüfen Sie die Verfügbarkeit und das Rauschen des Wi-Fi-Kanals mit einer Android-App wie Wi-Fi Analyzer

Deaktivieren Sie den automatischen Kanal in Ihrem Wi-Fi-Router und wählen Sie einen beliebigen Wi-Fi-Kanal aus, der in Ihrer Gegend nicht sehr überlastet ist

Deaktivieren Sie Wi-Fi-Repeater und Mesh-Netzwerke

Überprüfen Sie das Wi-Fi-Signal in Ihrem Gerät in einem Bereich stabil sein und in anderen Bereichen zu ungewollten Tasmota-Reconnects führen, vermutlich wenn sich die Signale von Access Points ähnlich stark überlappen

Wenn das Deaktivieren von Mesh-Netzwerken keine Option ist, halten Sie das Netzwerk beschäftigt, z

indem alle 20 Sekunden ein Ping von einem anderen Host ausgegeben wird, hat dies dazu beigetragen, die erneuten Verbindungen zu vermeiden

Wi-Fi funktioniert nicht mehr ~

Es gab viele Berichte darüber, dass Wi-Fi nach einer Weile nicht mehr funktionierte

Jedes Mal, wenn dies gemeldet wurde, war es ein Hardware- oder Signalinterferenzproblem

Auf der Hardwareseite haben wir Berichte gesehen von schlechten Lötstellen auf der Platine, die das Problem zu lösen scheinen, wenn sie ausgebessert werden (lockere Kondensatoren können dies verursachen) oder minderwertige/schwache Netzteile oder Spannungsregler, die den Stromanforderungen von Tasmota nicht gerecht werden oder sich im Laufe der Zeit verschlechtert haben

Wir haben auch Berichte gesehen, als eine bestimmte LED-Glühbirne in der Nähe einer angeschlossen wurde und die Signalqualität auf unbrauchbar abfiel

Alles, was Sie wirklich tun können, ist, die Lötstellen zu überprüfen und das Gerät näher an Ihren Access Point zu bringen

Wenn alles andere fehlschlägt, ersetzen Sie das Gerät.

Schwächeres Wi-Fi-Signal nach dem Upgrade~

Bei einem ESP82xx ist die Wi-Fi-Kalibrierung empfindlich gegenüber der zugeführten Stromversorgung

Wenn sich dies wesentlich ändert (z

B

wenn Sie einen Sensor hinzufügen, eine neue Tasmota-Funktion konfigurieren, die Firmware oder den Arduino Core aktualisieren usw.), ist die Wi-Fi-Kalibrierung des Geräts möglicherweise nicht mehr richtig eingestellt

Die Wi-Fi-Signalstärke (RSSI) kann erheblich abfallen und die Wi-Fi-Leistung beeinträchtigen

In einem solchen Fall muss die Wi-Fi-Kalibrierung gelöscht werden, um das Gerät zu zwingen, Wi-Fi nach dem Neustart neu zu kalibrieren

Führen Sie Reset 3 in der Konsole aus

Das Gerät wird neu gestartet Schalten Sie das Gerät aus und wieder ein

Die Wi-Fi-Kalibrierung wird nur durchgeführt, wenn das Gerät nach dem Einschalten einen Kaltstart durchführt

WebUI nicht verfügbar, aber Gerät kann gesteuert werden~

Einige Router haben Probleme mit der ARP-Implementierung

Um dabei zu helfen, verwenden Sie SetOption41, damit Ihr Gerät in einem gewünschten Intervall grausame ARP sendet (versuchen Sie es mit 30 oder 60 Sekunden für den Start)

Kann keine Verbindung zu meinem MQTT-Broker herstellen~

Stellen Sie sicher, dass Sie MQTT richtig konfiguriert haben

Wenn das Problem dadurch nicht behoben wurde, überprüfen Sie Ihre MQTT-Broker-Protokolle

Das wahrscheinlichste Problem ist, dass Ihr Broker keine Anmeldungen für Ihren konfigurierten Tasmota-Benutzer und Ihr Passwort zulässt oder Ihre ACL-Einstellungen Ihr Gerät nicht enthalten

In einigen sehr spezifischen Fällen kollidiert der MQTT-Broker-Code mit dem Arduino Core und lässt keine Verbindung zu

Erstellen Sie in diesem Fall einen anderen Benutzer für Ihr Gerät, versuchen Sie es mit einer anderen Core-Binärdatei oder einem anderen MQTT-Broker

Häufige MQTT-Wiederverbindungen~

Die meisten MQTT-Wiederverbindungsnachrichten werden zuerst mit Wi-Fi-Instabilität verknüpft

Beheben Sie zuerst alle Wi-Fi-Probleme!

Wenn die Konsole wiederholt Meldungen wie: anzeigt

02:32:54 MQTT: tele/MYSONOFF/LWT = Online (beibehalten) 02:32:54 MQTT: cmnd/MYSONOFF/POWER = 02:32:55 MQTT: Verbindungsversuch..

02:32:56 mDNS: Abfrage done with 0 mqtt services found 02:32:56 MQTT: Connected

1496455347: Neuer Client verbunden von IP_addr_1 als SONOFF (c1, k15, u’SONOFF_USER’)

1496455349: Neue Verbindung von IP_addr_1 auf Port 1883

1496455349: Client SONOFF bereits verbunden, alte Verbindung wird geschlossen

1496455349: Client-SONOFF getrennt

1496455349: Neuer Client verbunden von IP_addr_2 als SONOFF (c1, k15, u’SONOFF_USER’)

1496455350: Neue Verbindung von IP_addr_2 auf Port 1883

1496455350: Client SONOFF bereits verbunden, alte Verbindung wird geschlossen

1496455350: Client SONOFF getrennt.

sonoff

Wenn dies nicht das Problem ist, löschen Sie den gesamten Flash mit esptool.py oder esptool.exe und flashen Sie ihn erneut per Kabel (wie hier erklärt), indem Sie die neuesten vorkompilierten Bins mit Core v2.7.1 verwenden

Das Gerät wird von selbst auf die Standardeinstellungen zurückgesetzt~

Schlechte Stromversorgung~

Der häufigste Schuldige ist Power Cycle Recovery, das aktiviert werden kann, wenn das Gerät eine schlechte Stromversorgung hat oder Ihr Stromnetz Schwankungen/Unterspannungen aufweist

Deaktivieren Sie die Funktion mit SetOption65 1

Taste im EIN-Zustand, wenn sie gedrückt wird~

Wenn eine Taste so konfiguriert ist, dass sie beim Drücken im EIN-Zustand ist, wird die Funktion „Firmware-Reset“ aktiviert

Ändern Sie entweder den Tastenmodus oder verwenden Sie SetOption1 1, um den Factory-Reset-Modus zu deaktivieren

Ihr Gerät befindet sich möglicherweise in einer Boot-Schleife – ein Neustart, der durch eine Ausnahme oder einen Watchdog-Timer innerhalb von weniger als BOOT_LOOP_TIME (Standard 10 Sekunden) verursacht wird

Die Anzahl der zulässigen Startschleifen, bevor mit dem Zurücksetzen der Einstellungen begonnen wird, wird von SetOption36 bestimmt

Wenn Tasmota diese Situation erreicht, beginnt es mit der Wiederherstellung der Standardeinstellungen wie folgt:

1

Neustart: Deaktivieren Sie ESP8285 generische GPIOs, die Flash-SPI stören

Neustart: Deaktivieren Sie ESP8285-generische GPIOs, die Flash-SPI stören

2

Neustart: Deaktivieren Sie Regeln, die eine Boot-Schleife verursachen

Neustart: Deaktivieren Sie Regeln, die eine Boot-Schleife verursachen

3

Neustart: Deaktivieren Sie alle Regeln

Neustart: Alle Regeln deaktivieren 4

Neustart: Benutzerdefinierte GPIOs zurücksetzen, um alle angeschlossenen Peripheriegeräte zu deaktivieren

Neustart: Setzen Sie benutzerdefinierte GPIOs zurück, um alle angeschlossenen Peripheriegeräte zu deaktivieren

5

Neustart: Setzen Sie das Modul auf Sonoff Basic zurück (1)

Das Relais klickt und die LED blinkt in 1-Sekunden-Intervallen~

Dies weist darauf hin, dass Ihr Gerät nicht richtig geflasht wurde

In diesem Fall werden alle Pins in 1-Sekunden-Intervallen umgeschaltet

Ein Flash-Löschen und ein neuer Flash sind erforderlich.

Status-LED blinkt~

Die Status-LED Ihres Geräts blinkt wiederholt, wenn keine Wi-Fi- und/oder MQTT-Verbindung besteht

Wenn Sie MQTT nicht verwenden und es nicht konfiguriert haben, blinkt die Status-LED weiterhin

Sie können das Blinken der Status-LED deaktivieren mit: Backlog LedPower 0; SetOption31 1

Mein Gerät schaltet sich zufällig ein und aus

Habe ich Geister in meinem Haus?~

Die meisten Probleme mit zufälligen oder „Geister“-Umschaltungen hängen mit MQTT-Retain-Einstellungen zusammen

Kurz gesagt, Ihr MQTT-Broker speichert eine Nachricht mit dem POWER-Status des Geräts, die bei Neustarts angewendet wird

Lösung hier

In einigen Fällen führt das Hinzufügen eines Schalters zu einem Gerät zu Geisterschaltungen

In diesem Fall müssen Sie möglicherweise einen Tiefpassfilter hinzufügen, um etwaige Spitzen am Eingang zu dämpfen

Im Fall des Sonoff T1 kann eine Modifikation erforderlich sein, um den Filterkondensator auf der Platine auszutauschen

Dieses kurze 10-minütige Video von TheHookUp erklärt schön, was es ist und wie man es verhindert

Andere Ursachen können elektrischer Natur sein

Wenn Sie einen externen Schalter mit langen Drähten angeschlossen haben, können diese Streusignale aufnehmen und dazu führen, dass die Spannung am GPIO variiert

Lösung hier

Kann mein Gerät nicht in Modules~ finden

Wenn Sie ein Gerät geflasht haben, das nicht in der Modulliste aufgeführt ist, verwenden Sie Vorlagen, um Ihr Gerät zu konfigurieren

Versuchen Sie zuerst, im Templates Repository danach zu suchen

Das Gerät startet immer wieder neu, nachdem die Konfiguration über MQTT ~ geändert wurde

Wenn Sie Konfigurationen über MQTT geändert haben, kann der Befehl aufgrund eines Fehlers fehlschlagen und der Befehl wird wiederholt gesendet, wodurch das Gerät neu gestartet wird

Der Neustart ist normal, wenn Sie etwas an der Gerätekonfiguration ändern

Sie müssen die Retain-Meldungen löschen Ihres HA/Broker/MQTT-Servers

Lesen Sie auch:

Deaktivieren Sie TasmoAdmin! Es fragt Ihr Gerät alle 5 Sekunden mit dem Befehl STATUS 0 mit einer HTTP-Anforderung ab, was zu Statusaktualisierungen und unnötiger Belastung des Geräts führt

In einigen Fällen kann es sogar den normalen Gerätebetrieb stören.

Webinterface fragt nach Passwort~

Sie haben das Web-Admin-Passwort geändert ( Configure Other ) und können jetzt nicht auf die Web-Oberfläche zugreifen

Sie haben ein Passwort für die Weboberfläche eingerichtet

Sie können sich mit dem Benutzernamen admin und dem eingegebenen Passwort anmelden

Wenn Sie sich jedoch nicht an dieses Passwort erinnern, gibt es einige Möglichkeiten, wie Sie versuchen können, erneut auf die Weboberfläche zuzugreifen

Setzen Sie das Passwort mit dem Befehl WebPassword zurück

Wenn Sie eine serielle Verbindung zum Gerät haben: Führen Sie WebPassword 0 über eine serielle Terminalschnittstelle aus

Wenn Sie MQTT konfiguriert haben: Senden Sie 0 an cmnd//WebPassword

Sie können es von jedem MQTT-Client senden

Sie können auch ein anderes Tasmota-Gerät verwenden, indem Sie den Befehl „Veröffentlichen“ verwenden – Führen Sie „Publish cmnd//WebPassword 0“ von der Konsole dieses Geräts aus

Wenn die oben genannten Optionen nicht verfügbar sind: Da Tasmota GET-Anforderungen für Formulare verwendet, befindet sich das Passwort möglicherweise in Ihrem Browserverlauf

Suchen Sie dort nach Einträgen mit dem Namen, den Sie für das Gerät konfiguriert haben

Zum Beispiel unter folgendem Link:

http:///co?t1={“NAME”:”Generisch”‘”GPIO”:[23’22’24’17’134’132’0’0’131’52’21’ 0’0]'”FLAG”:0′”BASE”:67}&p1=GeheimesPasswort&b1=on&a1=Sonoff&a2=Sonoff2&a3=Sonoff3&a4=Sonoff4&b2=0&save=

Der Parameter p1 enthält das Passwort für die Webschnittstelle (in diesem Fall SecretPassword)

Hinweis: Sonderzeichen können als entsprechende ASCII-Hexadezimalcodes der Zeichen erscheinen (z

B

“{” = ‘\%7B’ usw.)

Wenn Sie WifiConfig 7 als Ihre Wi-Fi-Fallback-Methode eingerichtet haben (durch vorheriges Ausführen von WiFiConfig in der Konsole), können Sie das Gerät zurücksetzen, indem Sie es in den Wi-Fi-Manager-Modus booten

Wenn die im Gerät konfigurierte SSID nicht verfügbar ist (z

B

den Router ausschalten), fällt das Gerät auf diesen eingeschränkten Wi-Fi-Manager-Modus zurück

Wenn Ihr Gerät über eine physische Drucktaste verfügt, setzen Sie die Firmware wie hier beschrieben auf die Standardeinstellungen zurück

Wenn nichts hilft, müssen Sie die Firmware erneut über die serielle Schnittstelle flashen

Achten Sie darauf, den Flash-Speicher zu löschen, bevor Sie die Binärdatei hochladen

Die Stromüberwachung zeigt falsche Werte~

Wenn die in der Web-Benutzeroberfläche angezeigten Werte nicht richtig erscheinen und Sie ein unterstütztes Modul verwenden, müssen Sie den Energieüberwachungssensor kalibrieren

Falls Sie eine Vorlage verwenden, die Sie selbst erstellt oder in unserem Vorlagen-Repository gefunden haben Probieren Sie zuerst die Kalibrierungsmethode aus

Wenn die Werte immer noch falsch oder unrealistisch sind, sind die GPIOs der Energieüberwachungssensoren nicht richtig konfiguriert und Sie müssen die richtigen GPIO-Zuweisungen finden, bevor Sie fortfahren

Sensoren zeigen keine Werte an~

Stellen Sie sicher, dass Ihr Sensor richtig verdrahtet und die GPIOs zugewiesen sind

Ihre Vanilla tasmota.bin hat keine vollständige Sensorunterstützung

Stellen Sie sicher, dass Sie tasmota-sensors.bin installiert haben, die die größte Anzahl von Sensoren unterstützen

Einige Sensoren müssen im Code aktiviert und Ihre eigene Binärdatei kompiliert werden

Siehe Firmware-Builds für eine umfassende Liste der unterstützten Komponenten

Timer werden zur falschen Zeit ausgelöst~

Auf Tasmota-Geräten muss die Tageszeit richtig eingestellt sein, damit Timer ordnungsgemäß funktionieren

Überprüfen Sie das Protokoll in der Web-UI-Konsole, um festzustellen, ob die Uhrzeit des Geräts richtig eingestellt ist

Es gibt zwei Elemente zum Einstellen der Zeit: 1

Abrufen der UTC-Zeit und 2

lokale Sommerzeitrichtlinien.

Es gibt drei Methoden zum Einstellen der Gerätezeit: 1

NTP, 2

Ein RTC-Peripheriegerät oder 3. der Zeitbefehl

Die typische Methode, die Tasmota verwendet, um seine Zeit einzustellen, besteht darin, die Zeit von einem Internet-NTP-Server zu beziehen

Es kann auch einen NTP-Server in seinem lokalen Netzwerk abfragen (z

B

einen Netzwerkrouter mit einem NTP-Dienst, ein Raspberry Pi, auf dem der NTP-Daemon ausgeführt wird, das Chrony-Add-On in Home Assistant usw.).

Die Zeitsynchronisierungsanforderung wird an NTPSERVER1 erzwungen

Wenn keine Verbindung hergestellt werden kann, versucht es NTPSERVER2

Und schließlich NTPSERVER3

Stellen Sie sicher, dass diese Parameter richtig eingestellt sind und das Gerät mindestens einen dieser Zeitserver erreichen kann

Möglicherweise möchten Sie erwägen, einen NTP-Server lokal einzurichten

Solange der Computer irgendwann in der Lage ist, seine Zeit von einem Internet-Zeitserver einzustellen, kann dieser Computer als NTP-Server für Ihr(e) Tasmota-Gerät(e) dienen

Dies kann derselbe Computer sein, der Ihren MQTT-Broker oder Home-Automation-Hub hostet

Sie müssen auch die Zeitzonen- und Sommerzeitrichtlinien ( TimeDST / TimeSTD ) festlegen

Wenn Sie Timer haben, die die Sonnenuntergangs- oder Sonnenaufgangszeiten verwenden, müssen Sie diese festlegen Ihren Breiten- und Längengrad, damit diese Zeiten für Ihren Standort korrekt berechnet werden

Die automatische Erkennung in Home Assistant funktioniert nicht~

Die Firmware-Binärdatei tasmota-lite.bin (die mit Tuya-Convert geliefert wird) unterstützt keine automatische Erkennung

Bitte aktualisieren Sie auf tasmota.bin oder eine ähnliche Firmware-Variante, die diese Funktion unterstützt

Stellen Sie sicher, dass sie in Tasmota mit SetOption19 1 aktiviert ist und Sie die Home Assistant MQTT-Integration mit aktivierter Erkennung konfiguriert haben

Warum wird meine geänderte Konfiguration nicht geladen?~

Wenn Sie eine vorkompilierte Binärdatei geflasht haben, beachten Sie, dass alle nach dem Flash vorgenommenen Konfigurationen (WLAN, MQTT, Themen, Namen, Regeln usw.) bei einem Zurücksetzen der Firmware auf die Werkseinstellungen verloren gehen

Kurz gesagt: Der CFG_HOLDER ist die Ort, an dem die Konfiguration auf Ihrem Gerät gespeichert ist

Das Gerät prüft, ob in diesem CFG_HOLDER (Wert aus der my_user_config.h) eine Config gespeichert ist und lädt diese immer, falls vorhanden

=> lädt keine neu angewendeten Konfigurationen in Ihre my_user_config.h

Um die neue Konfiguration auf Ihr Gerät zu bekommen, müssen Sie die Datei CFG_HOLDER ändern

ABER: Man sollte immer versuchen auf dem Default CFG_HOLDER zu bleiben, dazu muss man zweimal flashen

ändere deine config in my_user_config.h oder besser user_config_override.h

Ändern Sie die CFG_HOLDER-Nummer

+1 oder -1 reicht (zB 0x20161208)

Blitz

Ändern Sie den CFG_HOLDER wieder auf die Standardeinstellung ( 0x20161209 )

erneut blinken

Danach wird Ihre neue Konfiguration im Standard-CFG_HOLDER auf Ihrem Gerät gespeichert

Dies ist notwendig, um zu vermeiden, dass Ihre Konfiguration verloren geht, wenn Sie mithilfe der vorgefertigten Images auf eine neue Firmware aktualisieren oder vergessen, den CFG_HOLDER in Ihren eigenen zu ändern eine, wenn Sie die Firmware selbst erstellen

Funktionsweise von CFG_HOLDER: Die Konfiguration Ihres Tasmota wird in einem Bereich des Flash-Speichers (Flash Config Area oder FCA) gespeichert

Bei Verwendung eines neuen Geräts (auf dem die Tasmota-Firmware zum ersten Mal ausgeführt wird) enthält der FCA keine Tasmota-Konfiguration

Daher verwendet er beim allerersten Start von Tasmota Ihre Einstellungen aus my_user_config.h oder user_config_override.h und kopiert diese in den FCA

Um zu verhindern, dass die folgenden Tasmota-Starts Ihre FCA-Einstellungen erneut überschreiben (z

B

weil Sie einige Dinge mithilfe von Befehlen geändert haben), wird die FCA mit einem Header-Wert gekennzeichnet, der angibt, die Werte aus my_user_config.h/user_config_override.h nicht erneut zu kopieren

Dieser Header wird zum Wert von CFG_HOLDER.

Bei jedem Start vergleicht das Gerät den Header von FCA mit dem CFG_HOLDER aus Ihrem Quellcode und nur wenn dieser Header-Wert nicht identisch ist, kopiert Tasmotat die Daten von my_user_config.h/user_config_override.h nach Flash-Einstellungsbereich – dies ist normalerweise nur bei einem neuen Gerät der Fall oder wenn Sie den CFG_HOLDER-Wert geändert haben

h du kannst

CFG_HOLDER-Wert einmal ändern, kompilieren, Gerät neu flashen (wie oben beschrieben)

Um zu vermeiden, dass Einstellungen durch neue Versionen überschrieben werden, vergessen Sie dies auch nicht

Wiederholen Sie den obigen Schritt mit dem ursprünglichen CFG_HOLDER-Wert

oder vergessen Sie nie, den CFG_HOLDER-Wert für alle kommenden Versionen auf Ihren Wert zu ändern

oder verwenden Sie den Befehl Reset 1 oder Reset 2 nach Änderungen in Ihrer my_user_config.h/user_config_override.h, ohne dass Sie Ihr Gerät doppelt neu flashen und/oder Ihren CFG_HOLDER-Wert doppelt ändern müssen:

oder nach Änderungen in Ihrer my_user_config.h/user_config_override.h, ohne dass Sie Ihr Gerät doppelt neu flashen und/oder Ihren CFG_HOLDER-Wert doppelt ändern müssen: Ändern Sie die Werte in my_user_config.h/user_config_override.h

belassen Sie CFG_HOLDER wie es ist

Starten Sie Ihr Gerät und geben Sie den Befehl Reset 1 oder Reset 2 aus

Wie invertiere ich den Ausgang der grünen LED am Sonoff Basic, sodass die LED leuchtet, wenn das Relais ausgeschaltet ist?~

Der Standardwert von LedState ist 1 (ein) – Zeigt den Betriebszustand der LED an

Mit LedState 0 (off) kann die LED komplett deaktiviert werden

Es gibt jedoch keine Möglichkeit, den Ausgang der grünen LED am Sonoff Basic zu invertieren

Der Flash-Modus kann nicht aufgerufen werden~

Achten Sie darauf, die Taste richtig zu drücken, Sie müssen ein Klicken “fühlen”

Wenn Sie mit Ihrer Taste auf dem Gerät nicht in den Flash-Modus wechseln können oder kein GPIO0 auf der Platine ausgebrochen ist, können Sie GND immer direkt auf dem Chip mit dem GPIO0-Pin überbrücken

Suchen Sie im Internet nach den Pinbelegungen Ihres Chips und verwenden Sie das Tutorial

Stellen Sie sicher, dass GPIO0 lange genug (3-5 Sekunden) geerdet bleibt, bevor Sie die Verbindung trennen, um sicherzustellen, dass der Chip vollständig im Programmiermodus gestartet wurde

Bei Geräten, die keine mit GPIO0 verbundene Taste bieten, kann es einfacher sein, die Kabelbrücke während des gesamten Flash-Vorgangs (Löschen und Hochladen) an Ort und Stelle zu lassen

Dadurch entstehen keine Probleme beim Flashen des Geräts

Nachdem die Firmware erfolgreich hochgeladen wurde, entfernen Sie die Brücke

Dadurch kann das Gerät normal booten

Probleme mit dem Blinken~

Überprüfen Sie noch einmal, ob Sie das Gerät mit dem Seriell-zu-USB-Adapter richtig verdrahtet haben

Fast jedes Gerät benötigt RX- und TX-Pins, die auf TX und RX geschaltet sind

Weitere Informationen finden Sie unter Hardwarevorbereitung

Ein weiteres häufiges Problem sind die verwendeten Überbrückungskabel

Probieren Sie ein anderes Kabel aus, wenn Sie weiterhin Verbindungsfehler erhalten, oder überprüfen Sie die Kabel auf Konnektivität

Die meisten von ihnen sind billig hergestellt und es kommt oft vor, dass diese Kabel wegen schlechter Crimpung oder gebrochener Kupferleitungen keine gute Verbindung bieten

Verwenden Sie unbedingt ein USB-Datenkabel und kein billiges Ladekabel für den Anschluss von Mobiltelefonen den Seriell-auf-USB-Adapter an Ihren Computer

Wenn Sie sich nicht sicher sind, probieren Sie einfach ein anderes USB-Kabel aus

Daten-USB-Kabel sind oft dicker als die normalen Ladekabel (und teurer)

Ein weiteres Problem können die Schwierigkeiten sein, den ESP-Chip beim Booten in den Programmiermodus zu bringen

Wenn der Flash immer noch fehlschlägt oder der Fortschritt unterbrochen wird, kann es sein, dass Ihr Computer oder Seriell-zu-USB-Adapter das Gerät nicht mit genügend Strom versorgt

Versuchen Sie es mit einem anderen Computer oder verwenden Sie ein externes Netzteil (3,3 V)

Weitere Informationen zu unzureichender Leistung

Verwenden Sie den richtigen Seriell-auf-USB-Adaptertreiber

Überprüfen Sie das Modell Ihres Adapterchips und holen Sie sich den richtigen Treiber

Wenn der Flash erfolgreich abgeschlossen wird, Sie jedoch eine Hash-Nichtübereinstimmung erhalten (esptool.py-Fehlermeldung Ein schwerwiegender Fehler ist aufgetreten: MD5 der Datei stimmt nicht mit Daten im Flash überein! ), stellen Sie dies sicher Ihr 3,3-V-Strom ist ausreichend

Problemumgehungen umfassen die Verwendung eines dedizierten Netzteils für die Steckplatine oder die Verwendung des 3,3-V-Ausgangs eines zusätzlichen Mikrocontrollers

Wenn Sie ein zusätzliches Netzteil verwenden, um das Gerät mit Strom zu versorgen, stellen Sie sicher, dass Sie eine gemeinsame Masse für das Netzteil, das zu flashende Gerät und den Seriell-auf-USB-Adapter verwenden

Wenn esptool.py bei “Uploading stub..

“, verwenden Sie –no-stub

Wenn der Flash fehlschlägt oder das Gerät nicht wie erwartet funktioniert, versuchen Sie es mit der standardmäßigen ESP82xx-Boot-ROM-Baudrate – 74880

Dies ist die Baudrate, auf die der ESP82xx standardmäßig eingestellt ist, wenn er in den Programmiermodus bootet

Sie kann als Befehlszeilenoption in esptool.py ( -b ) und esptool.exe ( -cb ) angegeben werden

Möglicherweise möchten Sie auch einen seriellen Monitor/Terminal auswählen, der diese “ungewöhnliche” Baudrate einstellen kann

Geben Sie in Termite diesen Wert ( 74880 ) in das Textfeld zur Auswahl der Baudrate ein, wenn Sie den Port konfigurieren

Wenn Sie die Option haben, diese ungewöhnliche Baudrate anzugeben, können Sie das ESP8266-Start-ROM-Protokoll anzeigen, während das Gerät hochfährt

Gerät fühlt sich heiß an~

Denken Sie daran – NIEMALS MIT 5V FLASHEN!?

Schalten Sie Ihr Gerät besser aus und prüfen Sie, ob die Verkabelung korrekt ist und die Spannung an Ihrem FTDI auf 3,3 V eingestellt ist

Wenn Sie VCC an den falschen Pin angeschlossen haben, kann dies dazu führen, dass Ihr Gerät überhitzt und zerstört wird

Es gab weißen Rauch und das Gerät funktioniert nicht mehr!~

Ja, Sie haben den sagenumwobenen “weißen Rauch” freigesetzt, die mysteriöse Substanz, mit der alle elektronischen Geräte arbeiten

Mit den unsterblichen Worten von Doctor Bones: Es ist tot, Jim!

Sonoff 4CH V2 / Sonoff Dual V2 blinkt nicht~

Beim Testen mit zwei verschiedenen (ziemlich neuen) FTDI-Boards und zwei Sonoff 4CH v2.0- und den Sonoff Dual v2.0-Boards stellte ich fest, dass ich Fehler beim Hochladen von Skizzen erhielt, dh “Warnung: espcomm_sync fehlgeschlagen”, im Grunde ein Mangel an Kommunikation zwischen den beiden Geräten.

Ich fand, dass das Problem bei beiden Sonoffs darin bestand, dass ich anstelle der FTDI-Sonoff-Frequenzweiche TX->RX und RX->TX TX->TX RX->RX machen musste, dies erlaubte mir dann, die Skizze hochzuladen

Das Flashen schlägt unter MacOS High Sierra~ fehl

Bezieht sich auf Ausgabe Nr

957.

Lösung:

Installieren Sie die VCP-Treiber für Mac von der FTDI-Website Starten Sie nach der Installation neu (es funktioniert nicht, wenn Sie nicht neu starten)

Schließen Sie nach dem Neustart den FTDI USB/Seriell-Konverter an

Akzeptieren Sie die Sicherheitswarnung von MacOS

Starten Sie den Flash-Vorgang neu

Es klappt!

Können Sie diesen nicht unterstützten Sensor zu Tasmota hinzufügen~

Kurze Antwort: NEIN!

Lange Antwort: Es gibt nicht genug Zeit im Leben unserer Programmierer, um Anfragen entgegenzunehmen, wenn Sie einen Treiber für diesen Sensor codieren und eine PR einreichen können, wird dies berücksichtigt, andernfalls können Sie nur darauf warten, dass jemand anderes dies tut

Verfügbare Zeichen für HOSTNAME~

24 Zeichen max

nur a..z A..Z 0..9 ‘-‘

kein ‘-‘ als letztes Zeichen

Hinweis: Hostnamen, die % enthalten, werden auf MQTT_TOPIC-<4digits> zurückgesetzt

Es ist nicht beabsichtigt, hier interne Tasmota-Variablen zu verwenden.

RFC952

ANNAHMEN

Ein “Name” (Netz-, Host-, Gateway- oder Domänenname) ist eine Textzeichenfolge mit bis zu 24 Zeichen aus dem Alphabet (A-Z), Ziffern (0-9), Minuszeichen (-) und Punkt (.)

Beachten Sie, dass Punkte nur dann erlaubt sind, wenn sie dazu dienen, Bestandteile von „Domain-Style-Namen“ abzugrenzen

(Hintergrundinformationen finden Sie unter RFC-921, “Domain Name System Implementation Schedule”)

Als Teil eines Namens sind keine Leer- oder Leerzeichen zulässig

Es wird nicht zwischen Groß- und Kleinschreibung unterschieden

Das erste Zeichen muss ein Alpha-Zeichen sein

Das letzte Zeichen darf kein Minuszeichen oder Punkt sein

Ein Host, der als GATEWAY dient, sollte “-GATEWAY” oder “-GW” als Teil seines Namens haben

Hosts, die nicht als Internet-Gateway dienen, sollten “-GATEWAY” und “-GW” nicht als Teil ihres Namens verwenden

Ein Host, der ein TAC ist, sollte “-TAC” als letzten Teil seines Hostnamens haben, wenn es sich um einen DoD-Host handelt

Einzelzeichennamen oder Spitznamen sind nicht erlaubt

Flash-Speicher-Überlegungen~

Um das Speichern von Parameteränderungen in Flash oder Spiffs zu beenden, verwenden Sie den Befehl SaveData off

Um das Speichern von Energieänderungen nur in Flash oder Spiffs zu beenden, verwenden Sie den Befehl SetOption0 off

Dadurch wird verhindert, dass das Relay nach dem Einschalten in denselben Zustand zurückkehrt, ES SEI DENN, Sie verwenden das MQTT-Retain-Flag

In diesem Fall sendet der MQTT-Broker den letzten bekannten MQTT-Status beim Neustart oder Einschalten

Der Befehl ButtonRetain on konfiguriert die Schaltfläche so, dass sie einen MQTT-Befehl mit Topic und gesetztem MQTT-Retain-Flag sendet

Was ist ein Arduino Core~

Arduino Core (Open Source) sind die Kernbibliotheken für ESP8266/ESP8285-Chips, um sie mit dem Arduino Framework kompatibel zu machen

Dieser Kern wird auf dem Espressif SDK (Closed Source) programmiert

Tasmota verwendet nur den Kern und wartet ihn nicht oder kann bei der Lösung von Problemen damit helfen

Sie können die Arduino Core-Version und die Espressif SDK-Version auf der Tasmota-WebUI unter dem Eintrag im Informationsmenü sehen

Ich kann hier keine Antwort finden !~

Überprüfen Sie den Abschnitt Fehlerbehebung oder treten Sie Discord, Telegram, Reddit oder Google Groups bei, um Hilfe von anderen Tasmota-Benutzern zu erhalten.

ioBroker Installieren Raspberry Pi 3 Update

Video unten ansehen

Weitere hilfreiche Informationen im Thema anzeigen iobroker restart raspberry

Teil 2 der ioBroker Reihe: ioBroker Installieren auf Raspberry Pi 3 / 4. Sicher die beliebteste Installation ist die auf dem Raspi. Alle benötigten Befehle findet ihr hier in der Beschreibung!
Viel Spass beim Nachbauen!
#iobroker #smarthome #homeautomation

– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –
neue Version:
https://youtu.be/bj7rX-UWbDY
ioBroker Reihe:
https://www.youtube.com/playlist?list=PL1DohxVjcQVCBQCCzWdGQ3i24VUW54YWP
– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –
Verwendete Befehle (in Reihenfolge):
ssh [email protected]
*hier die IP des Raspberry einfügen
sudo apt-get update
sudo apt-get upgrade
sudo raspi-config
* * * * hier die Optionen:
# 1. Change Password
# 4 – Change locale (de-de UTF8)
# 4 – Change Timezone (Berlin)
# 7 – Expand Filesystem
* * * *
curl -sLf https://deb.nodesource.com/setup_12.x | sudo -E bash –
sudo apt-get install -y nodejs
curl -sLf https://iobroker.net/install.sh | bash –
* * * *
*ioBroker Masterkurs: https://shop.haus-automatisierung.com/iobroker-master-kurs.html?refid=marcelscustom (*)
– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –
Hardware für dieses Projekt*
→ RaspberryPi 4 Set (rundum sorglos): https://amzn.to/2ZPqFEM
→ RaspberryPi 3: https://amzn.to/3eacOxU
→ RaspberryPi 4: https://amzn.to/2ZItbfW
→ SD Karte: https://amzn.to/2O4H175
→ Netzteil (RPi 3): https://amzn.to/2Cf8e4g
→ Netzteil (RPi 4): https://amzn.to/3e8Z86l
→ Kartenleser: https://amzn.to/2Za1vl0
Mein Equipment:
🎥 *Kamera: https://amzn.to/2LgzJPd
🎤 *Mikrofon: https://amzn.to/2QBQ8y1
💡 *Licht: https://amzn.to/2N69zgk
📡 *Homematic IP Zentrale: https://amzn.to/3gE9M7K
💡 *Smartes Lichtsystem: https://amzn.to/3qNTHRL
👨‍💻 *Raspberry Pi für ioBroker: https://amzn.to/3gB0WYB
– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –
Alle Links mit \”*\” sind Affiliate Links.
Marcels Custom Shop ist Partner am Amazon Affiliate Partner Programm
Marcels Custom Shop ist Partner am Haus-Automatisierung.com Affiliate Partner Programm
t26420 k26420 t3820-5,2

iobroker restart raspberry Einige Bilder im Thema

 New  ioBroker Installieren Raspberry Pi 3
ioBroker Installieren Raspberry Pi 3 New Update

Homeassistant:不仅仅是更优秀的智能 … – sspai Update New

02.12.2021 · 引言在智能家居市场,米家无疑是垄断地位。但是米家对于空调控制的优化不佳。首先是每次打开空调都是从16°起步,无法记住上次的温度。米家智能中温度风量只能二选一,只有16°和高速或者其他温度和自动风速。就 …

+ Details hier sehen

IoBroker Node NPM ERROR Adapter reparieren retten Upgraden beheben New Update

Video ansehen

Weitere Informationen zum Thema iobroker restart raspberry

IoBroker Retten und reparieren. Node NPM Adapter Upgraden u.o. Updaten
Meine Webseite = https://www.elzershark.com
Zu den Putty Befehlen = https://www.elzershark.com/forum/index.php?thread/29-iobroker-upgraden-node-npm-upgraden-error-retten-reparieren
Iobroker Original Seite Installieren, Upgrade, u.s.w. = http://www.iobroker.net/docu/?page_id=8323\u0026lang=de
IoBroker Forum = https://forum.iobroker.net/

Mein SmartHome Equipment:
►Amazon Echo Connect = https://amzn.to/2EIf4xN
►Raspberry Pi 3 B+ = https://amzn.to/2ICFFN3
►Raspberry Pi 3 Gehäuse + Netzteil + Lüfter + 3x Aluminium Kühlkörper + Mikro-USB-Kabel mit EIN / AUS Schalter http://amzn.to/2C7QfeU
►Micro SDHC Karte 8GB Class 10 = http://amzn.to/2BGSlS9
►Broadlink = http://amzn.to/2By2cud
►Amazon Echo Show = http://amzn.to/2oExklU
►Amazon Echo http://amzn.to/2kdEHMr
►Amazon Echo Dot = http://amzn.to/2yScZcJ
►Raspberry Zero W = http://amzn.to/2CWNyd7
►Enthält Affiliate Links
Unterstützt mich gerne per PayPal: https://www.paypal.me/Elzershark
#smarthome #iobroker #elzershark

iobroker restart raspberry Einige Bilder im Thema

 Update New  IoBroker Node NPM ERROR Adapter reparieren retten Upgraden beheben
IoBroker Node NPM ERROR Adapter reparieren retten Upgraden beheben New Update

gemmaron.nl Update

16.03.2022 · The rules engine is a simple MQTT client that runs on the same Raspberry Pi as the MQTT broker; it listens to topics of interest and based on incoming messages and any relevant state (stored in Redis) publishes message(s) and updates state. 1–my-mqtt-publish-topic-prefix=mysensors-out –my-mqtt-subscribe-topic-prefix=mysensors-in –my-mqtt-client …

+ Details hier sehen

Read more

04:59 Es ist besser als Zunder!

Suchen Sie einen Mann oder eine Frau? Männer Frauen

Was ist dein Geschlecht? Männer Frauen

Sind Sie älter als 18 Jahre? ja nein Bist du damit einverstanden, beim Sex mit einem Partner, den du auf unserer Seite triffst, ein Kondom zu benutzen? ja Nein

IR-Lesekopf (TTL) am Raspberry betreiben + ioBroker-Integration | haus-automatisierung.com [4K] New

Video ansehen

Neue Informationen zum Thema iobroker restart raspberry

⬇ ⬇ Alle Befehle und weitere Informationen im Blog-Beitrag weiter unten in der Infobox ⬇ ⬇
➤ 👨‍🎓 ioBroker-Master-Kurs: https://haus-automatisierung.com/iobroker-kurs/
➤ 👨‍🎓 Gratis MQTT-Kurs: https://haus-automatisierung.com/mqtt-kurs/
➤ Blog-Beitrag: https://haus-automatisierung.com/software/iobroker/2021/03/09/iobroker-stromzaehler-ir-lesekopf.html
• Gehäuse auf Thingiverse: https://www.thingiverse.com/thing:3378332
• Bau des Lesekopfes: https://www.youtube.com/watch?v=5rWxMc3Q3wU
• Fertige Lösung für USB – https://haus-auto.com/p/amz/IRLesekopf **
00:00 Intro
01:53 Platine im Detail
02:39 Serielle Schnittstelle vorbereiten
05:07 Lesekopf verbinden (zum testen)
06:40 Daten vom Stromzähler empfangen
10:14 ioBroker-Integration
12:22 OBIS-Kennzahlen
15:41 Lesekopf verbinden (Alternativen)
18:35 Raspberry Pi Hat
20:48 Ausblick und Ende
▬ Weitere Links ▬▬▬▬▬▬▬
Tutorials, Trainings und Kurse:
🎬 https://shop.haus-automatisierung.com/tutorials-kurse.html
Newsletter:
✉️ https://haus-automatisierung.com/newsletter/
Facebook-Insider-Gruppe:
📘 https://www.facebook.com/groups/HausAutomatisierungCom.Insider
▬ Produkte / Shopping ▬▬▬▬▬▬▬
• Raspberry Pi 4
→ Reichelt: https://haus-auto.com/p/rei/RaspberryPi4 **
→ Amazon: https://haus-auto.com/p/amz/RaspberryPi4 **
→ Conrad: https://haus-auto.com/p/con/RaspberryPi4 **
• Raspberry Pi Gehäuse
→ Reichelt: https://haus-auto.com/p/rei/RaspberryPi4Case **
→ Amazon: https://haus-auto.com/p/amz/RaspberryPi4Case **
→ Conrad: https://haus-auto.com/p/con/RaspberryPi4Case **
• Raspberry Pi Netzteil
→ Reichelt: https://haus-auto.com/p/rei/RaspberryPi4Netzteil **
→ Amazon: https://haus-auto.com/p/amz/RaspberryPi4Netzteil **
→ Conrad: https://haus-auto.com/p/con/RaspberryPi4Netzteil **
• Micro SD-Karte
→ Reichelt: https://haus-auto.com/p/rei/MicroSD **
→ Amazon: https://haus-auto.com/p/amz/MicroSD **
→ Conrad: https://haus-auto.com/p/con/MicroSD **
▬ Social Media ▬▬▬▬▬▬▬
Facebook: https://www.facebook.com/HausAutomatisierungCom/
Instagram: https://www.instagram.com/haus_automation/
Twitter: https://twitter.com/haus_automation
GitHub: https://github.com/klein0r
Thingiverse: https://www.thingiverse.com/klein0r/designs
Patreon: https://www.patreon.com/haus_automation
#smarthome #homeautomation #iobroker
▬ Disclaimer ▬▬▬▬▬▬▬
** Link zu einer Produktempfehlung – Natürlich empfehle ich Dir nur Produkte, welche ich selbst gekauft habe und ebenfalls gerne verwende. Wenn Du über einen dieser Links etwas kaufst, bekomme ich eine Provision vom Shop (Affiliate-Link). Ich würde mich freuen, wenn Du auf diese Art den Kanal unterstützt.

iobroker restart raspberry Sie können die schönen Bilder im Thema sehen

 New  IR-Lesekopf (TTL) am Raspberry betreiben + ioBroker-Integration | haus-automatisierung.com [4K]
IR-Lesekopf (TTL) am Raspberry betreiben + ioBroker-Integration | haus-automatisierung.com [4K] Update

dhj.giovobike.it Neueste

22.03.2022 · This USB hub will allow your raspberry pi to communicate with your smart devices on both zigbee or zwave prococols. The lock comes preprogrammed with Install the inside backplate. With a certified ANSI Grade 1, the very design of Schlage Connect makes sure that you get the best security system available.

+ hier mehr lesen

Read more

04:59 Es ist besser als Zunder!

Suchen Sie einen Mann oder eine Frau? Männer Frauen

Was ist dein Geschlecht? Männer Frauen

Sind Sie älter als 18 Jahre? ja nein Bist du damit einverstanden, beim Sex mit einem Partner, den du auf unserer Seite triffst, ein Kondom zu benutzen? ja Nein

ioBroker Installieren auf Raspberry Pi 4 – Einsteiger Guide New

Video ansehen

Weitere hilfreiche Informationen im Thema anzeigen iobroker restart raspberry

In diesem Video zeige ich die einfache Installation von ioBroker auf einem Raspberry Pi 4.
Dazu wird genutzt:
Pi Imager: https://www.raspberrypi.org/software
Putty: https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
Hardware:
💡 * Raspberry Pi 4 (single): https://amzn.to/3d8CNbJ
💡 * Raspberry Pi4 (Kit): https://amzn.to/2RisY2m
💡 * Speicherkarte: https://amzn.to/3fZmAHB
Die Befehle auf dem Raspberry:
curl -sLf https://deb.nodesource.com/setup_12.x | sudo -E bash –
sudo apt-get install -y nodejs
curl -sLf https://iobroker.net/install.sh | bash –
💥📖ℹ️ *ioBroker Masterkurs: https://shop.haus-automatisierung.com/iobroker-master-kurs.html?refid=marcelscustom (*) 💥📖ℹ️
ioBroker Reihe als Playlist:
https://www.youtube.com/playlist?list=PL1DohxVjcQVCBQCCzWdGQ3i24VUW54YWP
– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –
Mein Equipment:
🎥 *Kamera: https://amzn.to/2LgzJPd
🎤 *Mikrofon: https://amzn.to/2QBQ8y1
💡 *Licht: https://amzn.to/2N69zgk
📡 *Homematic IP Zentrale: https://amzn.to/3gE9M7K
💡 *Smartes Lichtsystem: https://amzn.to/3qNTHRL
👨‍💻 *Raspberry Pi für ioBroker: https://amzn.to/3gB0WYB
– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –
Alle Links mit \”*\” sind Affiliate Links.
Marcels Custom Shop ist Partner am Amazon Affiliate Partner Programm
Marcels Custom Shop ist Partner am Haus-Automatisierung.com Affiliate Partner Programm
Marcels Custom Shop ist Partner beim Awin Affiliate Partner Programm.

iobroker restart raspberry Ähnliche Bilder im Thema

 Update  ioBroker Installieren auf Raspberry Pi 4 - Einsteiger Guide
ioBroker Installieren auf Raspberry Pi 4 – Einsteiger Guide Update

Weitere Informationen zum Thema iobroker restart raspberry

Updating

Schlüsselwörter nach denen Benutzer zum Thema gesucht habeniobroker restart raspberry

Updating

Danke dass Sie sich dieses Thema angesehen haben iobroker restart raspberry

Articles compiled by Musicsustain.com. See more articles in category: MMO

Leave a Comment