Arduino sniffer 433 MHz

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
Miramithe
Inlägg: 1423
Blev medlem: 21 januari 2013, 17:45:10
Ort: Borlänge

Arduino sniffer 433 MHz

Inlägg av Miramithe »

Jag har ett litet problem. Försöker sniffa rätt på signalen från : http://pages.ebay.com/link/?nav=item.vi ... 75&alt=web

Men får ingenting. Sniffar med en billig reciver. http://pages.ebay.com/link/?nav=item.vi ... 04&alt=web

Kan läsa från en annan 433mhz sändare som styr sådana man sätter i vägguttaget.

Är det någon som använt liknade grejjor eller "pratar" dom olika så man inte kan sniffa eller behöver jag bara en annan kod?

Tack på förhand.
ElectricNooB
Inlägg: 600
Blev medlem: 26 juli 2011, 20:58:06

Re: Arduino sniffer 433mhz.

Inlägg av ElectricNooB »

Ja dom pratar oftast olika "språk". Med 433MHz avses bara frekvensen på radio/bär-vågen, allt annat är upp till tillverkaren.

Sen kan jag ju tycka att 433mHz är lite i längsta laget... :lol:
LarryXz
Inlägg: 670
Blev medlem: 13 mars 2013, 20:31:08
Ort: Norra Uppland

Re: Arduino sniffer 433 MHz

Inlägg av LarryXz »

Jag är ganska säker på att jag har en kod som fungerar med den där. Har tyvärr inte tid att leta fram den förräns i kväll.
Miramithe
Inlägg: 1423
Blev medlem: 21 januari 2013, 17:45:10
Ort: Borlänge

Re: Arduino sniffer 433 MHz

Inlägg av Miramithe »

Självklart ska det vara MHz :doh:

hittade denna i mina sökningar http://www.ebay.com/itm/1Key-315-433MHZ ... 233c17c474

Vilket ser ut som samma lika mottagare som jag har så det är nog bara koden.
Om inte sändarna är kassa, och inte sänder något, dom var ju trotts allt billiga.
LarryXz
Inlägg: 670
Blev medlem: 13 mars 2013, 20:31:08
Ort: Norra Uppland

Re: Arduino sniffer 433 MHz

Inlägg av LarryXz »

Kod: Markera allt

#include <RCSwitch.h>

RCSwitch mySwitch = RCSwitch();
//int ledPin = 13;

void setup() 
{
	Serial.begin(9600);
	mySwitch.enableReceive(0);  // Receiver on interrupt 0 => that is pin #2
	Serial.println("Receiver initiated");
	//pinMode(ledPin, OUTPUT);
}

void loop() 
{
	switch(channel())
	{
		case 'a':
			Serial.println("A");
			//digitalWrite(ledPin, HIGH);
			break;
		case 'b':
			Serial.println("B");
			//digitalWrite(ledPin, LOW);
			break;
		case 'c':
			Serial.println("C");
			break;
		case 'd':
			Serial.println("D");
			break;
			
	}
}

char channel()
{
	if (mySwitch.available())
	{
		char* b = dec2binWzerofill(mySwitch.getReceivedValue(), mySwitch.getReceivedBitlength());
		int data[4] = {0, 0, 0, 0};
		char* d = bin2tristate(b);

                data[0] = d[8]-48;
		data[1] = d[9]-48;
		data[2] = d[10]-48;
		data[3] = d[11]-48;
                
                for(int i = 0; i < 4; i++)
                  Serial.print(data[i]);

                Serial.println();
                
		mySwitch.resetAvailable();

		if(data[0] == 1)
		{
			return 'a';
		}
		else if(data[1] == 1)
		{
			return 'b';
		}
		else if(data[2] == 1)
		{
			return 'c';
		}
		else if(data[3] == 1)
		{
			return 'd';
		}
		else
			return 'f';
	}
	else
		return 'f';
}

static char* bin2tristate(char* bin) {
  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;
}
https://code.google.com/p/rc-switch/

Alternativt kan du använda exempelkoden ReceiveDemo_Advanced som medföljer i länken ovan.
Miramithe
Inlägg: 1423
Blev medlem: 21 januari 2013, 17:45:10
Ort: Borlänge

Re: Arduino sniffer 433 MHz

Inlägg av Miramithe »

Den ska jag testa :) testat advanced som är med i det biblioteket. Men den funka inte. Den funkar till min dosa jag tänder fönsterlamporna med men inte dom billiga.
LarryXz
Inlägg: 670
Blev medlem: 13 mars 2013, 20:31:08
Ort: Norra Uppland

Re: Arduino sniffer 433 MHz

Inlägg av LarryXz »

Om inte ReceiveDemo_Advanced fungerar så kommer inte min kod göra det heller eftersom jag plockat flera bitar av koden från den.
Men din fjärrkontroll bör vara identisk med den jag har (bortsett från färg och symbol på knappar).
Den här har jag, och koden fungerar utmärkt till den.
Använder även samma mottagare som du gör.
Miramithe
Inlägg: 1423
Blev medlem: 21 januari 2013, 17:45:10
Ort: Borlänge

Re: Arduino sniffer 433 MHz

Inlägg av Miramithe »

Yes den borde vara identisk, kollade i den, batterispänningen är 12,48v så det är inte slut i batteri, ic kretsen heter SC2260 som är kompatibel med PT2260.
Rotade fram min gamla handscanner som man kunde lyssna på polisradio på för att se om den sänder något eller inte, det gjorde den iaf.

i annonsen står det förövrigt type 2262, men i dosan heter ickretsen 2260.

http://aitendo3.sakura.ne.jp/aitendo_da ... 60R4_e.pdf pdf för SC2260
LarryXz
Inlägg: 670
Blev medlem: 13 mars 2013, 20:31:08
Ort: Norra Uppland

Re: Arduino sniffer 433 MHz

Inlägg av LarryXz »

Prova att koppla in en lysdiod (med rätt motstånd) på DATA utgången på mottagaren och se om den reagerar när du trycker på en knapp på sändaren.
Miramithe
Inlägg: 1423
Blev medlem: 21 januari 2013, 17:45:10
Ort: Borlänge

Re: Arduino sniffer 433 MHz

Inlägg av Miramithe »

jepp gjort det nu, den blinkar lite random när man bara har den inkopplad, den tar nog upp störningar, sen blinkar den intensivt, eller kanske lyser när man håller in knappen på sändaren.

Edit: förtydligande. det ser ut som den lyser när man håller in knappen på sändaren.
Användarvisningsbild
jadler
EF Sponsor
Inlägg: 407
Blev medlem: 28 maj 2009, 12:03:43
Ort: Vidja, Huddinge, Stockholm
Kontakt:

Re: Arduino sniffer 433 MHz

Inlägg av jadler »

Jag har gjort så att jag kopplar den billiga radiomodulens (digitala) utgång till en logikanalysator för att göra en visuell analys av dataöverföringen, det kan vara en bra start.
Miramithe
Inlägg: 1423
Blev medlem: 21 januari 2013, 17:45:10
Ort: Borlänge

Re: Arduino sniffer 433 MHz

Inlägg av Miramithe »

Det kan man ju göra om man har en. Men det borde ju gå kanske med ett annat bibliotek så den triggas annorlunda.
Användarvisningsbild
Wedge
Inlägg: 1026
Blev medlem: 8 juli 2012, 17:33:33

Re: Arduino sniffer 433 MHz

Inlägg av Wedge »

Det finns folk som använt PCns ljudkort för att lyssna på protokollet för fjärrkontroller och 433 MHz-mottagare.
Jag minns inte URLen nu, men en svensk har gjort ett hemautomationssystem och lite verktyg för sånt där. Är så gott som säker på att han är medlem här också.

Edit:
http://wiki.nethome.nu/doku.php/analyzer/start
Miramithe
Inlägg: 1423
Blev medlem: 21 januari 2013, 17:45:10
Ort: Borlänge

Re: Arduino sniffer 433 MHz

Inlägg av Miramithe »

Tackar hjärtligt. Ska använda den när tid som jag inte har just nu finns.
Skriv svar