tino11
July 19, 2023, 6:52pm
1
Hi,
ich versuche eine Funkfernbedienung aus China auszulesen der Quarz im inneren hat 13.560 (Sender) im Empfänger ist ein 6.7458 MHz Quarz verbaut.
Habe es mit einem 433 MHz Receiver mit der RCsswitch Libary versucht auszulesen, kein Signal.
Was für einen Empfänger benötige ich zum auslesen?
Vielen Dank im Voraus
Tino
Zeig doch mal einen Link deiner Teile und ein genaues Foto, wo alles gut drauf zu erkennen ist.
fony
July 19, 2023, 7:07pm
3
Wenn der Empfänger mit 6.7458 MHz arbeitet kanste alles Vergessen, für die Frequenz gibt's keine Lib.
Falsch, der Sender - Empfänger könnte mit 433MHz Arbeiten
Genaueres wissen wir erst, wenn die nötigen Informationen geliefert werden.
Verstehe auch nicht, warum sowas nicht gleich komplett gepostet wird.
Vermutlich weil keiner die vorhandene Anleitung durchliest.
Nach meiner Rechnung müsste min. der Sender für 433,92 MHz gebaut sein.
433 92 / 32 = 13,56
Was ist denn da für ein Chip verbaut?
Es könnten auch 868Mhz sein, die da hinten raus kommen....
fony
July 19, 2023, 7:36pm
6
Da müsste man bei BNA schauen ob das noch im grünem Bereich ist, habe die genaue Zuteilung nicht im Kopf. Hab's gefunden Ist noch OK
Das hätte ich dir auch sagen können.
Ne, das ist ja die Standardfrequenz in dem Bereich.
tino11
July 19, 2023, 7:49pm
8
Sorry kenn mich noch nicht so gut aus,
der chip heißt TS1602 J2811
der Code ist:
#include <RCSwitch.h>
RCSwitch rcSwitch = RCSwitch();
void setup() {
Serial.begin(9600);
rcSwitch.enableReceive(0); // Receiver on interrupt 0 => that is pin #2
}
void loop() {
if (rcSwitch.available()) {
Serial.println("<--- Beginn");
output(rcSwitch.getReceivedValue(), rcSwitch.getReceivedBitlength(), rcSwitch.getReceivedDelay(), rcSwitch.getReceivedRawdata(),rcSwitch.getReceivedProtocol());
rcSwitch.resetAvailable();
Serial.println("<--- End");
Serial.println();
}
}
static const char* bin2tristate(const char* bin);
static char * dec2binWzerofill(unsigned long Dec, unsigned int bitLength);
void output(unsigned long decimal, unsigned int length, unsigned int delay, unsigned int* raw, unsigned int protocol) {
const char* b = dec2binWzerofill(decimal, length);
Serial.print("Decimal: ");
Serial.print(decimal);
Serial.print(" (");
Serial.print(length);
Serial.println(" Bit)");
Serial.print("Binary: ");
Serial.println(b);
Serial.print("Tri-State: ");
Serial.println(bin2tristate( b));
Serial.print("PulseLength: ");
Serial.print(delay);
Serial.println(" microseconds");
Serial.print("Protocol: ");
Serial.println(protocol);
Serial.println("Raw data: ");
Serial.print("\t");
for (unsigned int i=0; i<= length*2; i++) {
Serial.print(raw[i]);
Serial.print(",");
if(i!= 0 && (i%5)==0){
Serial.println();
Serial.print("\t");
}
}
Serial.println();
}
static const char* bin2tristate(const char* bin) {
static char returnValue[50];
int pos = 0;
int pos2 = 0;
while (bin[pos]!='\0' && bin[pos+1]!='\0') {
if (bin[pos]=='0' && bin[pos+1]=='0') {
returnValue[pos2] = '0';
} else if (bin[pos]=='1' && bin[pos+1]=='1') {
returnValue[pos2] = '1';
} else if (bin[pos]=='0' && bin[pos+1]=='1') {
returnValue[pos2] = 'F';
} else {
return "not applicable";
}
pos = pos+2;
pos2++;
}
returnValue[pos2] = '\0';
return returnValue;
}
static char * dec2binWzerofill(unsigned long Dec, unsigned int bitLength) {
static char bin[64];
unsigned int i=0;
while (Dec > 0) {
bin[32+i++] = ((Dec & 1) > 0) ? '1' : '0';
Dec = Dec >> 1;
}
for (unsigned int j = 0; j< bitLength; j++) {
if (j >= bitLength - i) {
bin[j] = bin[ 31 + i - (j - (bitLength - i)) ];
} else {
bin[j] = '0';
}
}
bin[bitLength] = '\0';
return bin;
}
Die Fernbedienung:
Der Arduino Aufbau:
mit meiner 433 MHz Fernbedienung für den Ventilator funktionier alles wunder, auslesen und auch das Senden.
Gruß Tino
Die Library RCSwitch scheint richtig zu sein.
Der Sender ist ziemlich sicher für 433,92 MHz.
Beim Empfänger irtitiert mich die Antenne. Die scheint mir zu lang.
Kannst du den Empfänger noch mal einzeln etwas dichter und von beiden Seiten fotografieren.
fony
July 19, 2023, 7:57pm
10
Mit welscher Spannung funktioniert der Empfänger der Nano gibt 5V raus
Ist der gezeigte Empfänger überhaupt der zur Fernbedienung gehörige Empfänger ?
tino11
July 19, 2023, 8:02pm
12
Der Empfänger läuft mit 5V, die Antenne hab ich langgezogen, war wohl falsch.
Hier sind die Bilder:
Vielen Dank für eure hilfe
fony
July 19, 2023, 8:05pm
13
Bei ein kurzer Distanz sollte was kommen, auch bei falscher Antenne
Ok, ja, die Antenne sollte lieber in der originalen Form bleiben.
Es ist ein RXB12 Receiver. Der ist für 433,92 MHz.
Hier beschrieben.
Mit einem Oszilloskop könntest du dir die Daten an Pin Data ansehen. Oder mit einem Kopfhörer anhören.
fony
July 19, 2023, 8:07pm
15
Also ist nicht das Original, es könnte auch ein 868 Sender sein.
Antwort auf die Frage in Post #11 fehlt noch.
tino11
July 19, 2023, 8:11pm
17
Nein das ist nicht der orginal empfänger, ich will die funkdaten von der fernbedienung auslesen. Der Empfänger am Arduino soll das Funksignal auslesen.
Dann hast du uns mit deiner Aussage irritiert.
tino11
July 19, 2023, 8:13pm
19
Der gezeigte Empfänger hat einen 433 MHz Quarz verbaut. Sieht man auf dem Foto leider schlecht.
fony
July 19, 2023, 8:13pm
20
Und die China Leute haben nirgend wo geschrieben was für Frequenz das Ding nutzt?