433MHZ Empfang am ESP32

Hallo zusammen,

meine Kombination:

ESP32-WROOM-32

RXB6-Empfänger
MX-RM-5V-Empfänger

Der Empfang mit dem MX-RM-5V-Empfänger funktioniert, nach umstecken auf den RXB6 kommt nichts mehr an der seriellen Konsole an (mehrere Sender getestet)

Versuche ich es mit dem RXB6 an einem Arduino-Nano, dann geht es.

Der Einfachheit halber bin ich auf das Beispiel aus der RCSwitch-Library gegangen, mit der Änderung zwecks Interrupt-Pin.

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

void setup() {
  Serial.begin(115200);
  Serial.println("booting");
  //mySwitch.enableReceive(2);
  mySwitch.enableReceive(digitalPinToInterrupt(2));
  Serial.println("Empfang gestartet");
}

void loop() {
  if (mySwitch.available()) {
    Serial.print("Received ");
    Serial.print( mySwitch.getReceivedValue() );
    Serial.print(" / ");
    Serial.print( mySwitch.getReceivedBitlength() );
    Serial.print("bit ");
    Serial.print("Protocol: ");
    Serial.println( mySwitch.getReceivedProtocol() );
    mySwitch.resetAvailable();
  }
}

Wie gesagt, verwende ich den einfachsten Empfänger, dann geht es, nur mit dem RXB6 nicht, der aber am Arduino Nano funktioniert.
Am ESP32 habe ich einen Pegelwandler dazwischengeschaltet, aber auch wenn ich den testweise kurz umgehe, passiert nichts.
Grad eben nochmal versucht, stecke ich bei laufendem ESP32 auf den MX-RM-5V um, kommen sofort die Daten an.
Sender ist ein Arduino Nano, auch verschiedene Sendemodule ausprobiert, mit dem einfachsten Sendesketch.

Hat zufällig jemand einen RXB am ESP32 zu laufen? Fehlt vielleicht bei dem Interrupt was?

Grüße, Dirk

Wozu der Pegelwandler ?
Der ESP32 und auch der RXB6 arbeitet mit 3,3Volt.

Am ESP32 habe ich den bisher noch nicht angeschlossen, aber am ESP8266 läuft das.
Daher habe ich keine Erklärung für das Problem.

Botet der ESP nur neu oder ist er Stumm?

Es steht aber 5V drauf und daher war ich davon ausgegangen, dass er auch mit 5V rausgeht. Eigentlich sollte es ein RXB8 sein, aber beide neu bestellten Module kamen defekt und schonmal irgendwo verlötet hier an.

Läuft das bei Dir auch so in der Art wie in dem Besipiel-Sketch?

Ja, der RXB6 läuft mit RCswitch am ESP8266 schon seit langem problemlos. Ebenso mit einem RXB8.

Er bootet, bringt die entsprechenden Meldungen auf der Konsole, dann kommt nichts mehr.
Wie schon geschrieben, stecke ich im laufenden Betrieb um auf den MX-RM-5V, dann gehts sofort los auf der Konsole.
Mit dem Beispielsketch auf nem Arduino Nano geht auch der RXB6. Antenne ist auch dran.

Welche Meldung ?

Was für ESP ist das? hat er 2 Kerne? wen ja mal einen für Arduino zweiten für Rest zuweisen, hat mir schon öfters geholfen.

Dieses:

16:18:18.735 -> ets Jun  8 2016 00:22:57
16:18:18.735 -> 
16:18:18.735 -> rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
16:18:18.735 -> configsip: 0, SPIWP:0xee
16:18:18.735 -> clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
16:18:18.735 -> mode:DIO, clock div:1
16:18:18.735 -> load:0x3fff0018,len:4
16:18:18.735 -> load:0x3fff001c,len:1216
16:18:18.735 -> ho 0 tail 12 room 4
16:18:18.735 -> load:0x40078000,len:10944
16:18:18.788 -> load:0x40080400,len:6388
16:18:18.788 -> entry 0x400806b4
16:18:18.888 -> booting
16:18:18.888 -> Empfang gestartet

Meines Wissens hat der 2 Kerne, aber wie ich die einzeln zuweisen kann, weiß ich nicht. Mit dem anderen Empfänger (MX-RM-5V) gehts ja. Den möchte ich aber aus den bekannten Gründen nicht nehmen.

Schau mall hier

OK, ich konnte das eben nachvollziehen.
Am ESP32 mit einem RXB8 funktioniert es, mit einem RXB6 geht es def nicht.

Da habe ich akt. keine Idee.

War nicht schon mall das Problem, irgend wie, auf sowas kann mich erinnern, kann sei dass das im Nachbarforum war.

Da kann ich mich nicht erinnern.

@howy-1
ich habe es jetzt mehrfach getestet, auch mit einem neuen, unbenutzten RXB6, damit gehts nicht.
Dazwischen immer den RXB8 eingesetzt und der hat funktioniert.

Da habe ich auch keine Idee.

Okay, danke, dann brauche ich ja mit dem RXB6 nicht weiter zu versuchen und muss zusehen, einen funktionierenden 8er zu bekommen. Der war ja eh meine erste Wahl.

Grüße, Dirk

Alles klar, gerne.
Berichte mal, wenn du den RXB8 hast.

Für mich wäre das der Punkt, wo ich mit dem Oszi und dem LA die Signale beobachten würde.
Oder/Und mit SDRSharp den HF Salat.

Zudem, ich habe schon mal (andere) Module bekommen, die waren ganz klar mit 433 beworben und beschriftet, haben aber nur auf 315MHz Reaktionen gezeigt.

Da bin ich ganz bei dir.
Da ich dazu aber in meine Werkstatt muss, habe ich mir das für später (Wochenende) aufbewahrt.

Also der Sender, bzw. alle Module die ich probiert habe, senden definitiv auf 433MHz, denn ich konnte mit dem entsprechenden Sketch auch meine (Intertechno-)Schaltsteckdosen damit schalten.
Naja, und am Arduino funktioniert der RXB6 ja auch.

Ich habe mir eben mal den Oszi geschnappt und folgendes herausgefunden:
Pin GPIO2 wird durch die OnBoard-Led inkl. Widerstand so stark belastet, dass eine Funktion nicht mehr gewährleistet ist. Das offensichtlich nur beim RXB6, der RXB8 funktioniert weiterhin, da der Ausgang niederohmiger ist.
An anderen GPIO funktioniert das weiterhin. Welche davon geeignet bzw. ungeeignet sind, findest du in dieser Beschreibung.
Für die Anschaltung des RX solltest du diese Codezeile,

mySwitch.enableReceive(4);

angepasst an deinen GPIO, verwenden.
Unabhängig davon, musste ich feststellen, dass ein RXB6 von mir defekt ist. Der wurde gleich entsorgt.

Edit:
der funktionierende RXB6 arbeitet auch mit 3,3Volt, wie es im Datenblatt steht.

2 Likes