Filtrera bort störning på enkel 433 MHz mottagare
Filtrera bort störning på enkel 433 MHz mottagare
Har köpt en XY-MK-5V (http://www.mudah.my/RF+TX+RX+433MHz+Pai ... 746125.htm) på ebay och jag får massvis med störningar på datapinnen så den känns oanvändbar i dagsläget men någon här kanske har något litet knep hur jag filtrerar signalen?
Annars är frågan vad det finns för annan billig mottagare som fungerar bättre som jag kan köpa istället?
Annars är frågan vad det finns för annan billig mottagare som fungerar bättre som jag kan köpa istället?
Re: Filtrera bort störning på enkel 433Mhz mottagare
Halloj
Ett filter är bra för att avlasta cpu'n men hur detta filter skall se ut beror på vad du vill göra.
Själv så har jag gjort lösningar där radion sitter kopplad till uarten direkt då med filter för störningar, Även kört data in på interrupt pinne då med manchester kodning med och utan filter och bra och sådär funktion.
Båda fallen tycker jag du skall filtrera data pinnen jag körde med ca 4800 baud på 433mhz även snabbare typ 9600 men då blir räck vidden mindre.
Hastigheten på datan sätter gräns på filter. Utan filter är risken stor att du inte gör annat än falska interrupt. Jag körd typ resistor i serie med data och konding till gnd.
Kommer inte ihåg värden men ca 10k och 100-220nf.
Ett filter är bra för att avlasta cpu'n men hur detta filter skall se ut beror på vad du vill göra.
Själv så har jag gjort lösningar där radion sitter kopplad till uarten direkt då med filter för störningar, Även kört data in på interrupt pinne då med manchester kodning med och utan filter och bra och sådär funktion.
Båda fallen tycker jag du skall filtrera data pinnen jag körde med ca 4800 baud på 433mhz även snabbare typ 9600 men då blir räck vidden mindre.
Hastigheten på datan sätter gräns på filter. Utan filter är risken stor att du inte gör annat än falska interrupt. Jag körd typ resistor i serie med data och konding till gnd.
Kommer inte ihåg värden men ca 10k och 100-220nf.
Re: Filtrera bort störning på enkel 433Mhz mottagare
Ska bara lyssna av NEXA trafik så jag gissar att det är svårare att koppla till UART. Har satt den på RB0 så jag kan få interrupt på alla positiva flanker tex.
ska testa med 10k och en konding.
ska testa med 10k och en konding.
Re: Filtrera bort störning på enkel 433Mhz mottagare
Har testat nu och det fungerade inget vidare tyvärr.
Med motståndet blev signalen så pass svag så jag inte fick några avbrott längre och kondingen vet jag inte om den gjorde någon skillnad.
Tycker tyvärr inte att filtret gjorde någon skillnad annars.
Kollade med oscilloskopet och det ser ut som att jag får mest störningar runt 0-10khz.
Med motståndet blev signalen så pass svag så jag inte fick några avbrott längre och kondingen vet jag inte om den gjorde någon skillnad.
Tycker tyvärr inte att filtret gjorde någon skillnad annars.
Kollade med oscilloskopet och det ser ut som att jag får mest störningar runt 0-10khz.
- PHermansson
- EF Sponsor
- Inlägg: 4340
- Blev medlem: 22 december 2004, 00:46:38
- Ort: Särestad Grästorp
- Kontakt:
Re: Filtrera bort störning på enkel 433Mhz mottagare
Det är väl så att mottagaren höjer insignalen när det inte finns något att lyssna på, och sänker igen när det kommer starkare signaler. I mina experiment med att ta emot Nexa fungerar det bra genom att jag ignorerar bruset, en Nexasändning är ändå tydlig om man kollar med oscilloskop. Signalen är ju låg mellan koderna så det går att detektera en riktig kod. Minns jag rätt är pulserna i Nexa-signalerna mellan 400-1100mS, mellanperioden är cirka 11000mS.
Re: Filtrera bort störning på enkel 433Mhz mottagare
Du menar us va? 11s mellan perioderna blir lite väl långsamt.
Hur ska jag koda bort filtret då?
Tänkte i dagsläget kolla hur långt det är mellan varje positiv flank och på så vis avgöra om det är 1 eller 0.
Skulle kunna vara hårdare med timingen så att en 1a tex bara är 450-550 us men brus ger väll falska pulser där imellan i så fall.
Eller kan man kanske modda mottagaren?
Hur ska jag koda bort filtret då?
Tänkte i dagsläget kolla hur långt det är mellan varje positiv flank och på så vis avgöra om det är 1 eller 0.
Skulle kunna vara hårdare med timingen så att en 1a tex bara är 450-550 us men brus ger väll falska pulser där imellan i så fall.
Eller kan man kanske modda mottagaren?
- PHermansson
- EF Sponsor
- Inlägg: 4340
- Blev medlem: 22 december 2004, 00:46:38
- Ort: Särestad Grästorp
- Kontakt:
Re: Filtrera bort störning på enkel 433Mhz mottagare
Ja uS på svenska, microseconds på engelska. Det här kanske ger några tips?
Kod: Markera allt
/* For decoding Nexa remotes, as simple as possible(?)
RF receiver connected to Arduino pin D2.
C Patrik Hermansson 20121218
GPL v2
*/
unsigned long timeOfLastPinChange=0, message;
long microsSinceLastChange,microsSinceLastChangeOld;
int startbit, c=0;
boolean lowhigh;
void pinChange () {
// Pin level has changed
long currentTime = micros();
microsSinceLastChange = (currentTime - timeOfLastPinChange);
timeOfLastPinChange = currentTime;
}
void setup()
{
Serial.begin(9600);
Serial.println("Start Nexa-decode");
attachInterrupt (0, pinChange, CHANGE); // attach interrupt handler
}
void loop()
{
if (microsSinceLastChangeOld != microsSinceLastChange) { // Pin has changed since last time
// Detect startbit
if (microsSinceLastChange >=11000 && microsSinceLastChange <=11400 && startbit==0)
{
startbit = 1;
Serial.println("Startbit received ");
}
// Check for short and long pulses, add to message accordingly
if (microsSinceLastChange < 700 && startbit==1)
{
c++;
message = message << 1;
}
else if (microsSinceLastChange > 700 && microsSinceLastChange < 1500 && startbit==1)
{
c++;
message = message << 1;
message |= 1;
}
// Save current time
microsSinceLastChangeOld = microsSinceLastChange;
// All pulses received, check if code is recognized and reset counters
if (microsSinceLastChange >=11000 && startbit==1 && c>0) {
Serial.println("Done");
//Debug:
Serial.println(message);
switch (message) {
case 2863320261: // A1 on
//digitalWrite(LED, HIGH);
Serial.println("A1 on");
break;
case 2863320229: // A1 off
//digitalWrite(LED, LOW);
Serial.println("A1 off");
break;
}
message=0;
c=0;
startbit=0;
}
}
}Re: Filtrera bort störning på enkel 433Mhz mottagare
Ser ut som så jag tänkte koda men jag fick så mycket interrupt så jag kodade aldrig klart.
Det kanske funkar trots alla störningar om man skriver så eller annars stramar om tidsvillkoren.
Det kanske funkar trots alla störningar om man skriver så eller annars stramar om tidsvillkoren.
Re: Filtrera bort störning på enkel 433 MHz mottagare
Har en alternativ mottagare som låg i garderoben annars.
Har en Ardeunis ARF-05 liggandes.
Borde inte vara så jobb att få igång den. Vad tror ni om den för att sniffa nexa?
Har en Ardeunis ARF-05 liggandes.
Borde inte vara så jobb att få igång den. Vad tror ni om den för att sniffa nexa?
- PHermansson
- EF Sponsor
- Inlägg: 4340
- Blev medlem: 22 december 2004, 00:46:38
- Ort: Särestad Grästorp
- Kontakt:
Re: Filtrera bort störning på enkel 433 MHz mottagare
Verkar vara en transciever med en del egen intelligens, vet inte om den skulle funka. Själv har jag bland annat testat med en CDR03A, en riktigt simpel mottagare.
Re: Filtrera bort störning på enkel 433 MHz mottagare
Verkar som intelligensen handlar om att sätta känslighet och riktning snarare än att den har egen kodning eller protokoll.
Ska testa den billiga först och se om jag kan ignorera bruset. Annars får jag sätta mig in i hur jag sätter upp den andra kretsen.
Ska testa den billiga först och se om jag kan ignorera bruset. Annars får jag sätta mig in i hur jag sätter upp den andra kretsen.
Re: Filtrera bort störning på enkel 433 MHz mottagare
Såg att ARF-05 demodulator är FSK2+-50kHz vilket inte säger mig så mycket, men är det samma som nexa kör?
I manualen står det att man kan koppla ett par kondingar och en spole till rf ground för att få bort lite störningar men att de automatiskt försvinner när man får en sändning annars.
I manualen står det att man kan koppla ett par kondingar och en spole till rf ground för att få bort lite störningar men att de automatiskt försvinner när man får en sändning annars.
- PHermansson
- EF Sponsor
- Inlägg: 4340
- Blev medlem: 22 december 2004, 00:46:38
- Ort: Särestad Grästorp
- Kontakt:
Re: Filtrera bort störning på enkel 433 MHz mottagare
Men om du tar min kod ovan och en enkel mottagare liknande min så ska det fungera. Varför göra det mer komplicerat än så?
Re: Filtrera bort störning på enkel 433 MHz mottagare
Ska testa det men har grejerna på jobbet så det blir mest funderingar nu.
Re: Filtrera bort störning på enkel 433 MHz mottagare
PHermansson:
Hur får du ut hur lång en puls är? På picen i mikroc kan jag bara kolla timers som snurrar i sin egen hastighet.
Hur får du ut hur lång en puls är? På picen i mikroc kan jag bara kolla timers som snurrar i sin egen hastighet.
