Ich bekomme immer wieder die Meldung
wenn ich Adapter installieren oder ein Update machen will.
Was bedeutet das? Was mach ich da?
p.S.: Bevor die frage kommt:
Ich bekomme immer wieder die Meldung
wenn ich Adapter installieren oder ein Update machen will.
Was bedeutet das? Was mach ich da?
p.S.: Bevor die frage kommt:
Hallo Leute.
Ich hab gerade ein mir unbekannten Sonoff bei AliExpress gefunden.
Kennt den jemand und weiß ob der bereits vorhandene USB fürs Flashen mit Tasmota geeignet ist?
Es gibt wo ein Beispiel von jemanden, das aber viel komplizierter funktioniert und der rechnet da nicht in RGB um.
Weiss nicht mehr wo das war.
Dachte mir mit dem einfachen fertigen Teil in Node-Red ist das total easy. Aber falsch gedacht.
Ich versteh so wie so nicht warum ich dazu so wenig wirklich sinnvolles im Netz finde.
Egal ob für ioBroker oder Node-Red.
Warum kompliziert was Javern? Das Problem müssen ja ganz viele haben.
LED sind halt mal nur Rot, Grün und Blau um Farben zu mischen.
Ich bin Veranstaltungstechniker und Lichttechniker und wir arbeiten nur mit RGB oder CMY werte. Egal ob in der Planung, in den Pulten oder an der Lampe selber.
Versteh nicht warum der yahka da mit HSV werten arbeitet bzw. HomeKit.
Hallo Leute,
schön langsam raucht mein Kopf.
Leider gibt der yahka Adapter ja nur Farben in HSV aus.
Um diese in RGB um zu rechnen wollte ich den node-red-contrib-color-convert Node in Node-Red nutzen.
Leider bekomme ich das irgendwie nicht hin und finde dazu nichts hilfreiches im Internet.
Wie macht Ihr das so???
Das hat mich inspiriert es etwas anders auf zu bauen.
schimmer-media.de/index.php?attachment/3674/
<xml xmlns="http://www.w3.org/1999/xhtml">
<block type="on" id="R-8t#:kbCUC2S|rlzxV%" x="38" y="-38">
<field name="OID">mqtt.0.home.01.Wohnzimmer.Alarm</field>
<field name="CONDITION">ne</field>
<field name="ACK_CONDITION"></field>
<statement name="STATEMENT">
<block type="controls_if" id="G_.)};7yY2w%9c}SclZ-">
<mutation elseif="1"></mutation>
<value name="IF0">
<block type="logic_compare" id="RjS=//_PB8_7oto;DAoc">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="fcn1r[c(cSc~1WjP7dj6">
<field name="ATTR">val</field>
<field name="OID">mqtt.0.home.01.Wohnzimmer.Alarm</field>
</block>
</value>
<value name="B">
<block type="logic_boolean" id="+8oO%9G2rUVc}TV~GmlV">
<field name="BOOL">TRUE</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="timeouts_setinterval" id="x}%vpNhS#Q.[f^om2_vO">
<field name="NAME">Intervall</field>
<field name="INTERVAL">900</field>
<field name="UNIT">ms</field>
<statement name="STATEMENT">
<block type="control" id="?Q!axP`jC/JmlQJ;NHj:">
<mutation delay_input="false"></mutation>
<field name="OID">mqtt.0.home.01.Wohnzimmer.Arbeitstisch</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="logic_boolean" id=".aIjN(C,Yc.a%0?PS2CZ">
<field name="BOOL">TRUE</field>
</block>
</value>
<next>
<block type="control" id="4xCd1:WwbA)~,y(!+^F:">
<mutation delay_input="true"></mutation>
<field name="OID">mqtt.0.home.01.Wohnzimmer.Arbeitstisch</field>
<field name="WITH_DELAY">TRUE</field>
<field name="DELAY_MS">400</field>
<field name="UNIT">ms</field>
<field name="CLEAR_RUNNING">FALSE</field>
<value name="VALUE">
<block type="logic_boolean" id="F1h4aLf=cg.Ll*|M:4?0">
<field name="BOOL">FALSE</field>
</block>
</value>
</block>
</next>
</block>
</statement>
</block>
</statement>
<value name="IF1">
<block type="logic_compare" id="o*U!e91W9z_)sU5h4`F1">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="oTwN2[{_s.27|+MXk#[!">
<field name="ATTR">val</field>
<field name="OID">mqtt.0.home.01.Wohnzimmer.Alarm</field>
</block>
</value>
<value name="B">
<block type="logic_boolean" id="SA+B?!,HFa?%H3aqT`N[">
<field name="BOOL">FALSE</field>
</block>
</value>
</block>
</value>
<statement name="DO1">
<block type="timeouts_clearinterval" id="A,;W@.A4REzvXIH59MEG">
<field name="NAME">Intervall</field>
</block>
</statement>
</block>
</statement>
</block>
<block type="on" id="s3zg_Y`2P/VLgpW|N:(Y" x="1063" y="-37">
<field name="OID">mqtt.0.home.01.Wohnzimmer.Alarm</field>
<field name="CONDITION">ne</field>
<field name="ACK_CONDITION"></field>
<statement name="STATEMENT">
<block type="controls_if" id="7w+0O(8.=ML%_3XmjtPG">
<mutation elseif="1"></mutation>
<value name="IF0">
<block type="logic_compare" id="HUx@+)wyBokVC=G{bM,7">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="a]U38F2EyU(u{Y@e@`R/">
<field name="ATTR">val</field>
<field name="OID">mqtt.0.home.01.Wohnzimmer.Alarm</field>
</block>
</value>
<value name="B">
<block type="logic_boolean" id="CFL!6`(*iwZs~K9jf`A?">
<field name="BOOL">TRUE</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="timeouts_setinterval" id="a~aS?cr0ZX/rf2Fs/Hg4">
<field name="NAME">Intervall2</field>
<field name="INTERVAL">900</field>
<field name="UNIT">ms</field>
<statement name="STATEMENT">
<block type="control" id="bV5Y6f2LWz,1x{+[G}.D">
<mutation delay_input="false"></mutation>
<field name="OID">mqtt.0.home.01.Wohnzimmer.Schreibtisch</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="logic_boolean" id="-6%mS3sC3%3WlJ`92D^]">
<field name="BOOL">TRUE</field>
</block>
</value>
<next>
<block type="control" id="f@%%Kpeia8B{_?{P{2Pl">
<mutation delay_input="true"></mutation>
<field name="OID">mqtt.0.home.01.Wohnzimmer.Schreibtisch</field>
<field name="WITH_DELAY">TRUE</field>
<field name="DELAY_MS">400</field>
<field name="UNIT">ms</field>
<field name="CLEAR_RUNNING">FALSE</field>
<value name="VALUE">
<block type="logic_boolean" id="o4aS7^9}7YxN]`C3a+Gx">
<field name="BOOL">FALSE</field>
</block>
</value>
</block>
</next>
</block>
</statement>
</block>
</statement>
<value name="IF1">
<block type="logic_compare" id="2NaIPrN|X/Jk:|(V%R6%">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="Rn-pJU_wv,l^8rvW;W[^">
<field name="ATTR">val</field>
<field name="OID">mqtt.0.home.01.Wohnzimmer.Alarm</field>
</block>
</value>
<value name="B">
<block type="logic_boolean" id="X1pt-C*_}yW/Uu5,f,)U">
<field name="BOOL">FALSE</field>
</block>
</value>
</block>
</value>
<statement name="DO1">
<block type="timeouts_clearinterval" id="S@=rfs8`F9.{A7}S.B9k">
<field name="NAME">Intervall</field>
</block>
</statement>
</block>
</statement>
</block>
</xml>
Alles anzeigen
Ich wollte mir mit Blockly etwas zusammen stellen damit Lampen in einem Zimmer immer wieder an und aus gehen um dies als Wecker oder Alarm einmal weiter nutzen zu können.
Ich habe dies auf mehrere Wege versucht, doch immer hängt sich der komplette ioBroker auf und ich konnte das ganze System nur über das Terminal wieder zum laufen bringen.
Mach ich was falsch oder ist mein 3er Pi dafür zu schwach?
schimmer-media.de/index.php?attachment/3527/
Hallo Leute.
Ich hab jetzt zum testen seit einer kurzem zeit den Arduino Ethernet mit dem 433toMQTTto433 (https://github.com/1technophile/433toMQTTto433) am laufen.
Bis auf ein paar Kleinigkeiten die ich mal extra fragen werde funktioniert das ganz gut.
Kann damit div 433mhz Empfänger schalten und von mehreren Sendern, wie Fernbedienungen etwas empfangen.
Jetzt will ich das aber auf ein oder mehrere ESP8266 (D1 Klone) aufspielen.
Aber entweder ist meine Englisch doch viel schlechter als ich dachte oder ich finde es einfach nicht.
Ich schaffe es einfach nicht, wie ich mein so weit funktionierendes Programm so umschreibe, das es auf dem ESP8266 mit WLAN funktioniert.
Der 433toMQTTto433 basiert angeblich auf dem OpenMQTTGateway (https://github.com/1technophile/OpenMQTTGateway) doch auch da werde ich irgendwie nicht schlau daraus.
Vielleicht kann mir ja wer weiterhelfen und es vielleicht selber nutzen.
#include <Ethernet.h>
#include <PubSubClient.h>
#include <RCSwitch.h> // library for controling Radio frequency switch
#include <SPI.h>
RCSwitch mySwitch = RCSwitch();
//Do we want to see trace for debugging purposes
#define TRACE 1 // 0= trace off 1 = trace on
// Update these with values suitable for your network.
byte mac[] = { 0x**, 0x**, 0x**, 0x**, 0x**, 0x** };
byte localserver[] = { ***, ***, ***, *** };
byte ip[] = { ***, ***, ***, *** };
byte subnet[] = { 255, 255, 255, 0 };
#define MQTT_USERNAME "*******"
#define MQTT_KEY "*******"
//adding this to bypass to problem of the arduino builder issue 50
void callback(char*topic, byte* payload,unsigned int length);
EthernetClient ethClient;
// client parameters
PubSubClient client(localserver, 1883, callback, ethClient);
//MQTT last attemps reconnection number
long lastReconnectAttempt = 0;
boolean reconnect() {
if (client.connect("433toMQTTto433")) {
// Once connected, publish an announcement...
client.publish("outTopic","hello world");
// Client connected
trc("connected");
//Topic subscribed so as to get data
String topicNameRec = String("home/MQTTto433/");
//Subscribing to topic(s)
subscribing(topicNameRec);
}
return client.connected();
}
// Callback function, when the gateway receive an MQTT value on the topics subscribed this function is called
void callback(char* topic, byte* payload, unsigned int length) {
// In order to republish this payload, a copy must be made
// as the orignal payload buffer will be overwritten whilst
// constructing the PUBLISH packet.
trc("Hey I got a callback ");
// Allocate the correct amount of memory for the payload copy
byte* p = (byte*)malloc(length);
// Copy the payload to the new buffer
memcpy(p,payload,length);
// Conversion to a printable string
p[length] = '\0';
String callbackstring = String((char *) p);
String topicNameRec = String((char*) topic);
//launch the function to treat received data
receivingMQTT(topicNameRec,callbackstring);
// Free the memory
free(p);
}
void setup()
{
//Launch serial for debugging purposes
Serial.begin(9600);
//Begining ethernet connection
Ethernet.begin(mac, ip, subnet);
if (client.connect("arduinoethernet", "luni", "782360")) {
client.publish("home/433toMQTT","hello world");
client.subscribe("home/MQTTto433");
}
delay(1500);
lastReconnectAttempt = 0;
// RF transmitter is connected to this pin 9, we activate it only when sending RF data to avoid conflict between transmitter and receiver
pinMode(9, OUTPUT);
digitalWrite(9, LOW);
mySwitch.enableTransmit(9); // RF Transmitter is connected to Arduino Pin #9
mySwitch.setRepeatTransmit(10); //increase transmit repeat to avoid lost of rf sendings
mySwitch.enableReceive(0); // Receiver on inerrupt 0 => that is pin #2
mySwitch.setPulseLength(189); //RF Pulse Length, varies per device.
}
void loop()
{
//MQTT client connexion management
if (!client.connected()) {
long now = millis();
if (now - lastReconnectAttempt > 5000) {
lastReconnectAttempt = now;
trc("client mqtt not connected, trying to connect");
// Attempt to reconnect
if (reconnect()) {
lastReconnectAttempt = 0;
}
}
} else {
// MQTT loop
client.loop();
}
// Receive loop, if data received by RF433 send it by MQTT to MQTTsubject
if (mySwitch.available()) {
// Topic on which we will send data
trc("Receiving 433Mhz signal");
String MQTTsubject = "home/433toMQTT";
long MQTTvalue;
MQTTvalue=mySwitch.getReceivedValue();
mySwitch.resetAvailable();
if (client.connected()) {
trc("Sending 433Mhz signal to MQTT");
trc(String(MQTTvalue));
sendMQTT(MQTTsubject,String(MQTTvalue));
} else {
if (reconnect()) {
sendMQTT(MQTTsubject,String(MQTTvalue));
lastReconnectAttempt = 0;
}
}
}
}
void subscribing(String topicNameRec){ // MQTT subscribing to topic
char topicStrRec[26];
topicNameRec.toCharArray(topicStrRec,26);
// subscription to topic for receiving data
boolean pubresult = client.subscribe(topicStrRec);
if (pubresult) {
trc("subscription OK to");
trc(topicNameRec);
}
}
void receivingMQTT(String topicNameRec, String callbackstring) {
trc("Receiving data by MQTT");
trc(topicNameRec);
char topicOri[26] = "";
char topicStrAck[26] = "";
char datacallback[26] = "";
// Below you send RF signal following data value received by MQTT
// converting string to char for condition statement
callbackstring.toCharArray(datacallback,26);
trc(datacallback);
long int data = atol(datacallback);
trc("Send received data by RF 433");
trc(String(data));
//send received MQTT value by RF signal (example of signal sent data = 5264660), we activate the transmitter on pin 9 the time to send data by RF
digitalWrite(9, HIGH);
mySwitch.send(data, 24);
digitalWrite(9, LOW);
}
//send MQTT data dataStr to topic topicNameSend
void sendMQTT(String topicNameSend, String dataStr){
char topicStrSend[26];
topicNameSend.toCharArray(topicStrSend,26);
char dataStrSend[200];
dataStr.toCharArray(dataStrSend,200);
boolean pubresult = client.publish(topicStrSend,dataStrSend);
trc("sending ");
trc(dataStr);
trc("to ");
trc(topicNameSend);
}
//trace
void trc(String msg){
if (TRACE) {
Serial.println(msg);
}
}
Alles anzeigen
Hallo Leute.
Ich hab ein kleines Problem mit den Zeitstempel in Blockly.
Ich möchte den Zeitstempel der letzten Änderung in einen Text einfügen.
Diesen soll dann natürlich nicht als Zeitstempel angezeigt werden, sondern als Datum und Uhrzeit.
Es gibt zwar unter Konvertierung den Baustein "nach Datum/Zeit", doch trotzdem bekomme ich immer nur den Zeitstempel mit zum Beispiel "1532413234919" raus.
Was mach ich falsch?schimmer-media.de/index.php?attachment/3499/