Und da ich hier „heute“ auch alleine bin, konnte ich die Aktion durchführen - alles läuft- IP angepasst. Bis jetzt nichts negatives Feststellen können. Nur das meine Matter Geräte wieder schneller Online waren.
Letzte Woche habe ich NACC (Nick’s Adaptive Cover Control), also den Rollladen-Blueprint für meine Bedürfnisse, als pre-final fertiggestellt.
Am WE hat leider der Aussperrschutz für die Balkontür nicht 100% funktioniert - zum Glück waren wir noch indoor
In dieser Woche werde ich dem SwitchManager Good Bye sagen, und ihn durch schlanke und tracebare(!) Automationen basierend auf MQTT Events ersetzen.
Das wird mir einige Kopfschmerzen und aufwändige Fehlersuchen ersparen.
Ich werde versuchen iobroker auf nem pi zu installieren um dort bosch easycontrol zu installieren und es dann mit ha zu koppeln. In der Hoffnung das es dann klappt mit dem bosch ct200
wenn der Taster 1x lang - 3x kurz - 1x lang betätigt wird, schließt das Nuki die Tür auf.
da keiner weiß, was der Taster kann und auch den Code nicht kennt, ist die Missbrauchsgefahr relativ gering. Und ihr wisst nicht wo ich wohne, außerdem habe ich den Code für diesen Beitrag geändert.
erfolglose Hack-Versuche werden an mein Handy gesendet und die Außenkamers zeichnet den ganzen Spaß auf.
EDIT: Aufgrund der vielen „Likes“ hier der Code für den Sequenz-Prüfer Function-Node
/**
* Konfigurationsparameter
*/
const TARGET_CODE = '-...-'; // Zielcode: 1x Lang, 3x Kurz, 1x Lang
const BASE_UNIT = 400; // Basiseinheit in ms
const MAX_DURATION_DOT = BASE_UNIT * 2; // = 800ms. Alles unter diesem Wert ist ein Punkt (.).
const MAX_INACTIVITY_TIME = 3000; // Code wird nach 3 Sekunden Inaktivität gelöscht
// --- Context-Variablen ---
let startTime = context.get('startTime') || 0;
let currentCode = context.get('currentCode') || '';
let resetTimer = context.get('resetTimer') || null;
// 1. Eingangsdaten prüfen
if (typeof msg.payload !== 'string' || (msg.payload !== 'on' && msg.payload !== 'off')) {
return null;
}
// HOLT DEN ZUSTAND DIREKT VOM PAYLOAD
const newState = msg.payload;
// 2. Timer-Logik für Inaktivität (Code-Zurücksetzung)
if (resetTimer) {
clearTimeout(resetTimer);
}
resetTimer = setTimeout(() => {
if (currentCode.length > 0) {
node.warn(`Code ${currentCode} durch Inaktivität zurückgesetzt.`);
context.set('currentCode', '');
}
context.set('resetTimer', null);
}, MAX_INACTIVITY_TIME);
context.set('resetTimer', resetTimer);
// --- TASTER GEDRÜCKT (START der Messung: Wechsel auf 'off') ---
if (newState === 'off') {
startTime = Date.now();
context.set('startTime', startTime);
node.status({ fill: "green", shape: "dot", text: "Warte auf Loslassen... (OFF erkannt)" });
return null;
}
// --- TASTER LOSGELASSEN (ENDE der Messung: Wechsel auf 'on') ---
else if (newState === 'on' && startTime > 0) {
const duration = Date.now() - startTime;
startTime = 0; // Messung abgeschlossen
let symbol = '';
// Klassifizierung:
if (duration < MAX_DURATION_DOT) {
symbol = '.'; // Kurz = Punkt
} else {
symbol = '-'; // Lang = Strich
}
// 3. Sequenzprüfung
const nextCharIndex = currentCode.length;
if (TARGET_CODE[nextCharIndex] === symbol) {
// Das Symbol ist korrekt für diese Position
currentCode += symbol;
if (currentCode === TARGET_CODE) {
// **ERFOLG** - Gesamter Code eingegeben
node.status({ fill: "blue", shape: "dot", text: `CODE ERKANNT: ${currentCode}` });
currentCode = ''; // Code zurücksetzen für nächste Eingabe
context.set('currentCode', currentCode);
context.set('startTime', startTime);
msg.payload = "SUCCESS";
return msg;
}
// Teil-Erfolg, weiter warten
node.status({ fill: "yellow", shape: "dot", text: `Aktuell: ${currentCode}` });
} else {
// Falsches Symbol an dieser Stelle: Code zurücksetzen
node.status({ fill: "red", shape: "dot", text: `FEHLER. Erwartet: ${TARGET_CODE[nextCharIndex]}, Erhalten: ${symbol}` });
node.warn(`Code ${currentCode} fehlerhaft. Wird zurückgesetzt.`);
currentCode = '';
}
// 4. Kontext speichern
context.set('startTime', startTime);
context.set('currentCode', currentCode);
return null;
}
// Andere Zustände ignorieren
return null;
Es gibt einen neuen Switch Manager, der alte wurde seit langer Zeit nicht mehr gepflegt und von der Community wurde er wieder ins Leben gerufen, hierzu gibt es auch ein Video.
Ja, habe ich leider sehr viel Erfahrung mit. Läuft bei mir nur leider nicht. Keiner weiß warum. Zeigt mir unbekanntes Gerät an. Ich weiß das es früher mal lief. Hab schon alles mögliche probiert. Bin aber immer offen für einen neuen Versuch
Damit kann ich den Fühler an der Nordseite des Hauses am Doppelstabmattenzaun festmachen und beim beim Verlassen des Hauses schnell mal die Temperatur checken.
Hi, ich habe letztes Wochenende ein wenig konstruiert, letzte Woche dann einige Teile gedruckt und wollte damit mein Nachtischdisplay erneuern. Herausgekommen ist der HA Buddy.
Ich habe das CYD (ESP32 mit Touch Display) schon eine Weile als Nachtischdisplay im Einsatz und finde das immer ganz praktisch eine Uhr zu haben und nebenbei auch Wetterdaten und Hausstrom verfolgen zu können. Jetzt habe ich es endlich mal geschafft und mich an einer neuen Version für das Display versucht. Es zeigt jetzt ein animiertes Gesicht mit 12 unterschiedlichen Emotionen. Diese werden ausgelöst durch die hinterlegten Schalter für HA im Code oder über Helfer direkt aus HA heraus. Funktioniert soweit schon einmal super und er reagiert logischerweise auch, wenn ich alexa sage, mache das Licht an.
Nach einer einstellbaren Zeit, wechselt das Display automatisch zur Uhranzeige und ebenfalls über eine einstellbare Zeit meldet sich der HA Buddy dann wieder für eine gewisse Zeit.
Ich nutze das Display auch für meinen Hermes Agenten. Da er Zugriff auf mein HA hat, habe ich ihn einen Skill mit den möglichen Emotionen erstellen lassen und immer wenn er jetzt eine beliebige Aufgabe ausführt, zeigt er mir bei Abschluss und Beginn eine Emotion auf dem Display. Echt cool..
Sobald ich den Code komplett fertig habe, teile ich das Projekt wie immer gerne. Ach seht ihr, hier noch ein Bild mit Cappy:
Habe mir vor einer Zeit einen TP-Link Outdoor CEP 210 gekauft um endlich mal mein Netzwerkproblem zum CarPort zu beseitigen. Bin gerade jetzt beim einrichten des CEP210 der soll ja das WLAN Signal über mehrere Km bringen können, braucht nur die 50m können dann bin ich schon glücklich.