Arduino Uno Funksreckdose 433mhz funktioniert nicht

Hallo zusammen,
versuche schon den ganzen Tag mit Arduino über Sender Funksteckdose anzusprechen. Aber irgendwie klappt es nicht. Über die Abfrage mit dem Empfänger klappt es.


Aber ich bekomme die Funkstckdose nicht zum Ein und Ausschalten.
Ich habe es Binär Probiert und mit allen coden, nichts bewegt sich.
so die links zu meiner Steckdose und sender und Empfänger:
https://www.amazon.de/dp/B00EQ1U5XQ?psc=1&ref=ppx_yo2ov_dt_b_product_details

Funksteckdose:
https://www.amazon.de/Brennenstuhl-Funksteckdosen-programmierbar-Fernbedienung-1507071/dp/B09927DJG6/ref=sr_1_12?__mk_de_DE=%C3%85M%C3%85%C5%BD%C3%95%C3%91&crid=230P3DT8LTM5B&keywords=brennenstuhl+comfort+line&qid=1672488650&s=diy&sprefix=brennstuhl+comfort+line%2Cdiy%2C116&sr=1-12

code: zum Einschalten:

/*
  Example for different sending methods
  
  https://github.com/sui77/rc-switch/
  
*/

#include <RCSwitch.h>

RCSwitch mySwitch = RCSwitch();

void setup() {

  Serial.begin(9600);
  
  // Transmitter is connected to Arduino Pin #10  
  mySwitch.enableTransmit(8);
  
  // Optional set protocol (default is 1, will work for most outlets)
  // mySwitch.setProtocol(2);

  // Optional set pulse length.
  // mySwitch.setPulseLength(320);
  
  // Optional set number of transmission repetitions.
  // mySwitch.setRepeatTransmit(15);
  
}

void loop() {

 
  /* Same switch as above, but using binary code */
  mySwitch.send("000100101001111011111010011");
  /*delay(1000);*/  
  /*mySwitch.send("000000000001010100010100");
  delay(1000);*/

 
}

Was genau klappt da ?
Zeig doch mal, was du im seriellen Monitor siehst.

Ich habe oben . Ein bild vom protokoll eingefügt. Hier bekomme ich beim ein und auschalten die code zurück.

Hier nochmal eine vergrösserte Form des protokolls.

Tue mal das kopieren und hier einfügen, manche arbeiten mit Tablet und das ist schon ein Akt das vernünftig anzeigen

Auch auf einem PC schaut das nicht besser aus.

Grüße Uwe

Hier Die Ausgabe aus dem Sereillen Monitor. Beim ein und Auschalten der Funksteckdose.
Ich habe auch schon zwei sender ausprobiert. An einem habe ich die Antenne selber angelötet, und beim zweiten war sie bei Lieferung schon dran.


Decimal: 742365331 (32Bit) Binary: 00101100001111111001100010010011 Tri-State: not applicable PulseLength: 700 microseconds Protocol: 2
Raw data: 7032,408,1572,400,1576,1404,576,420,1544,1424,560,1416,584,408,1560,432,1560,408,1564,420,1564,1408,572,1412,556,1416,576,1416,572,1408,556,1420,572,1416,564,424,1544,444,1556,1412,576,1400,564,432,1560,412,1572,412,1548,1424,580,408,1564,424,1548,1424,572,416,1560,424,1544,1428,572,1404,220,

Decimal: 312408787 (32Bit) Binary: 00010010100111101111101011010011 Tri-State: not applicable PulseLength: 700 microseconds Protocol: 2
Raw data: 7020,428,1544,424,1560,432,1552,1416,564,424,1544,444,1556,1412,564,440,1556,1404,560,416,1568,428,1560,1408,556,1412,576,1408,592,1396,560,420,1572,1388,664,184,60,1068,652,1332,600,1392,580,1404,600,376,1616,1352,600,392,1572,1400,592,1396,576,412,1568,1404,596,400,1588,388,1560,1408,596,

Decimal: 742365331 (32Bit) Binary: 00101100001111111001100010010011 Tri-State: not applicable PulseLength: 700 microseconds Protocol: 2
Raw data: 7012,432,1556,428,1548,1420,556,436,1556,1416,556,1416,568,428,1560,420,1564,436,1544,424,1552,1412,572,1412,576,1408,564,1412,576,1404,568,1420,560,1408,584,424,1552,412,1560,1412,588,1396,576,412,1556,432,1556,424,1552,1412,576,408,1608,364,1616,1368,576,420,1576,400,1568,1392,612,1364,572,

Decimal: 312408787 (32Bit) Binary: 00010010100111101111101011010011 Tri-State: not applicable PulseLength: 700 microseconds Protocol: 2
Raw data: 7036,412,1552,428,1548,440,1556,1412,576,416,1540,440,1560,1408,576,424,1556,1408,568,424,1568,416,1572,1400,556,1424,560,1436,544,1412,580,412,1580,1392,616,1360,592,1392,600,1384,600,1368,592,408,1596,1368,620,360,1608,1364,624,1372,584,404,1580,1392,604,380,1624,356,1596,1372,616,1376,572,

Decimal: 742365331 (32Bit) Binary: 00101100001111111001100010010011 Tri-State: not applicable PulseLength: 700 microseconds Protocol: 2
Raw data: 7064,372,1592,404,1572,1400,572,412,1588,1376,608,1376,596,392,1592,420,1556,436,1552,428,1564,1400,556,1420,572,1412,576,1404,564,1416,572,1412,580,1396,568,432,1564,404,1572,1396,568,1412,592,404,1568,408,1556,432,1564,1404,576,416,1552,436,1560,1408,560,420,1556,436,1564,1400,568,1400,2092,

Decimal: 312408787 (32Bit) Binary: 00010010100111101111101011010011 Tri-State: not applicable PulseLength: 697 microseconds Protocol: 2
Raw data: 7024,424,1560,424,1556,416,1552,1416,580,420,1556,420,1556,1412,584,424,1564,1408,572,412,1560,424,1568,1404,572,1400,576,1408,592,1396,584,404,1556,1416,588,1392,596,1372,580,1400,600,1388,588,400,1564,1400,608,384,1580,1384,588,1384,676,320,1612,1360,616,388,1584,392,1572,1392,596,1384,588,

Decimal: 742365331 (32Bit) Binary: 00101100001111111001100010010011 Tri-State: not applicable PulseLength: 700 microseconds Protocol: 2
Raw data: 7016,440,1536,432,1548,1420,572,432,1540,1432,544,1420,576,428,1560,432,1544,424,1552,436,1552,1416,560,1428,548,1416,576,1416,576,1400,560,1420,580,1408,588,400,1556,432,1564,1396,580,1400,568,436,1564,400,1568,416,1552,1416,592,396,1564,412,1572,1404,588,404,1560,416,1560,1412,2012,44,60,

Decimal: 312408787 (32Bit) Binary: 00010010100111101111101011010011 Tri-State: not applicable PulseLength: 704 microseconds Protocol: 2
Raw data: 7032,424,1568,404,1560,424,1564,1408,564,428,1552,432,1556,1412,568,436,1568,1396,560,424,1552,436,1560,1404,560,1408,580,1408,588,1396,564,416,1572,1400,588,1400,568,1400,592,1396,580,1404,572,416,1572,1396,580,408,1564,1404,588,1400,576,408,1572,1400,600,396,1600,380,1556,1412,592,1392,588,

Decimal: 742365331 (32Bit) Binary: 00101100001111111001100010010011 Tri-State: not applicable PulseLength: 695 microseconds Protocol: 2
Raw data: 7000,432,1524,476,1528,1448,520,448,1528,1440,548,1440,536,448,1532,436,1552,420,1576,396,1580,1392,580,1424,556,1412,560,1432,560,1416,552,1424,560,1420,592,388,1556,444,1580,1380,572,1408,560,456,1536,424,1548,428,1548,1416,588,408,1548,452,1544,1428,564,404,1584,396,1568,1432,540,1412,560,

Alles Gute im Neuem

Nach Beispielen schon gesucht, oder wilste das Rad neu erfinden?
Versuch damit
Alle gefundene Beispiele senden so

rcSwitch.sendTriState("000FF0F0FFFF");

dazu kommt noch das dein Empfänger ist Schrot, der arbeitet nicht zuverlässig.
Dieser ist schon in anderer Liga :wink:

Tri-State: not applicable
der code von draeger-it.blog funktioniert auch nicht

Hallo, zuerst Gesundes neues Jahr an alle :slightly_smiling_face:

@exo_72:
Nochmal für mich zum Verständnis. Du hast die solche Brennstuhl Funksteckdosen gekauft mit Fernbedienung. Dazu ein 433MHz RX/TX Modul.

Wenn du nun auf der Fernbedienung herumdrückst, siehst du die Ausgabe wie in #7?

Dann ist so zu sagen:

Decimal: 312408787 (32Bit) Binary: 00010010100111101111101011010011 Tri-State: not applicable PulseLength: 700 microseconds Protocol: 2

dein einschalt Signal und:

Decimal: 742365331 (32Bit) Binary: 00101100001111111001100010010011 Tri-State: not applicable PulseLength: 700 microseconds Protocol: 2

das ausschalte Signal ...oder umgekehrt.

Wenn das so ist, dann ist dein gesendeter Binärstring falsch, zudem ist dein String 27Bit lang das ist irgendwie nicht richtig.

Zudem musst du noch die richtige Pulse Länge angeben und das richtige Protokoll.

Auch bei diesem Code lässt es sich nicht ein und auschalten

#include <RCSwitch.h>
RCSwitch rcSwitch = RCSwitch();

const int senderPin = 3;  // An Pin 15
const int protocol = 2;
const int pulseLength = 700;
const int wait = 1000;

void setup() {
  rcSwitch.enableTransmit(senderPin);
  rcSwitch.setPulseLength(pulseLength);
  rcSwitch.setProtocol(protocol);
}

void loop() {
  rcSwitch.send("00101100001111111001100010010011");

  //rcSwitch.sendTriState("000FF0F0FFFF");
  delay(wait);

  rcSwitch.send("00010010100111101111101011010011");
  //rcSwitch.sendTriState("000FF0F0FFF0");
  delay(wait);
}

Hast du denn auch mal den Decimal-Code getestet ?

Habe ich. Auch ohne erfolg.

Ok....und du hast dir auch beide Ergebnisse (decimal von der FB und deinem Arduino Signal) im seriellen Monitor angesehen ?
Kannst du das auch hier mal zeigen ?

Schein so aussehen das du hast andere oder ältere Lib.
Bei mir kompiliert der Beispiel aus dem Link Fehlerfrei für Uno.
Nur Kompiliert, habe keinen Sender um das testen.

Der Sketch verwendet 2740 Bytes (8%) des Programmspeicherplatzes. Das Maximum sind 32256 Bytes.
Globale Variablen verwenden 208 Bytes (10%) des dynamischen Speichers, 1840 Bytes für lokale Variablen verbleiben. Das Maximum sind 2048 Bytes.

Hier das Beispiel für Senden:

#include <RCSwitch.h>
RCSwitch rcSwitch = RCSwitch();

const int senderPin = 15;  // An Pin 15
const int protocol = 1;
const int pulseLength = 358;
const int wait = 1000;

void setup() {
  rcSwitch.enableTransmit(senderPin);
  rcSwitch.setPulseLength(pulseLength);
  rcSwitch.setProtocol(protocol);
}

void loop() {
  rcSwitch.sendTriState("000FF0F0FFFF");
  delay(wait);

  rcSwitch.sendTriState("000FF0F0FFF0");
  delay(wait);
}

Die Lib ist diese
Natürlich muss man die Parameter eistellen, wurde sogar den Beispiel für auslesen aus dem Link nehmen, kostet nix, und vielleicht ist dein Problem aus der Welt

Und was genau willst du mit dem "Tristate-Protokoll" ?
Zum ein bzw. ausschalten der Steckdosen reicht decimal aus.

Das genau möchte ich mal vom TO sehen.

Also der TO schreibt dass das Beispiel nicht Kompiliert.
Nicht das die Lib Version ist beschränkt auf einen Protokoll.

Das habe ich nirgens gelesen. Er schreibt nur, es funktioniert nicht. Also er kann nicht ein bzw. Ausschalten.

Das Problem ist hier, die Aussage "geht nicht" ist sehr informativ und aussagekräftig.

Komisch.

Ich würde ebenfalls mit einem zweiten Arduino ein vergleich machen zwischen FB und dem 433MHz TX Modul. Nicht das TX Modul defekt ist oder gar nicht richtig verkabelt.

also ich habe jetzt zwei Sender ausproiert. jetzt das ganze noch einmal am zweiten arduino ausprobiert. auch hier Funktioniert es nicht. Wenn beide Sender nicht senden, dann sind wohl beide defekt.Bemn senden bekomme ich nihcts Angeziegt am Seriellen Monitor. Beim Empfang ändert sich nichts.
Am Sender sind einmal an GND= an GND, Mitte = 5 V, und das dritte an Pin 3

<- – Beginn
Decimal: 312408787 (32 Bit)
Binary: 00010010100111101111101011010011
Tri-State: not applicable
PulseLength: 700 microseconds
Protocol: 2
Raw data: 
.7020,424,1556,420,1556,432,
.1548,1412,568,428,1556,
.420,1552,40,3532,24,
.1552,1412,564,436,176,
.144,24,40,248,28,
.2728,60,264,68,32,
.36,140,40,2560,24,
.224,68,236,68,2432,
.68,3320,96,780,32,
.28,184,172,56,288,
.2360,72,16,76,92,
.2116,32,748,36,160,
.32,164,96,60,
<- – End

<- – Beginn
Decimal: 742365331 (32 Bit)
Binary: 00101100001111111001100010010011
Tri-State: not applicable
PulseLength: 700 microseconds
Protocol: 2
Raw data: 
.7008,432,1552,416,1552,1420,
.572,428,16,16,20,
.20,20,68,16,16,
.16,20,68,20,20,
.124,20,20,16,20,
.16,16,20,20,656,
.20,20,32,20,32,
.20,24,16,612,408,
.1564,412,1560,1412,568,
.1416,112,2716,40,196,
.236,40,148,48,188,
.44,776,56,36,656,
.36,552,16,188,
<- – End

<- – Beginn
Decimal: 312408787 (32 Bit)
Binary: 00010010100111101111101011010011
Tri-State: not applicable
PulseLength: 702 microseconds
Protocol: 2
Raw data: 
.7000,436,1564,416,1556,424,
.1552,1416,564,428,1544,
.444,88,36,420,28,
.368,40,92,20,1548,
.432,112,44,36,60,
.2940,88,88,76,32,
.868,72,48,36,32,
.80,36,140,32,2680,
.108,308,40,316,72,
.184,44,124,20,28,
.64,148,16,88,2244,
.56,48,292,408,68,
.184,44,464,132,
<- – End

<- – Beginn
Decimal: 742365331 (32 Bit)
Binary: 00101100001111111001100010010011
Tri-State: not applicable
PulseLength: 700 microseconds
Protocol: 2
Raw data: 
.7020,420,1544,432,16,16,
.16,36,16,108,20,
.1424,564,436,1544,432,
.1536,448,1520,460,1520,
.1448,536,1448,528,1444,
.536,1448,544,1436,532,
.1444,544,1436,536,456,
.1524,460,1516,1444,536,
.1444,540,452,1524,28,
.108,132,2512,2604,52,
.16,112,520,16,116,
.184,36,48,136,56,
.136,1232,140,16,
<- – End