Pages: [1]   Go Down
Author Topic: Creating a broad 433mhz "Sniffer"  (Read 266 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 2
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hey everyone,

I'm looking to create a "RF Sniffer" sketch with a new device I have just purchased, see here: http://altelectronics.co.uk/shop/arduino/usb-rf-433-92-mhz-transceiver-module/prod_77.html

An example of a sketch used to find devices specific to the same brand as my device is below, but I am wondering if I can modify it or write an entirely new one to find and display packet information of ANY device nearby operating on 433.92mhz.

Code:
// * This code is an example for receiving data from sensors made by Adaptive Design ltd.
// * You'll find more information on http://www.adaptivedesign.ie
// * Tested with the Aduino IDE 1.0 of later
// * THIS SKETCH REQUIRES:
// *
// * Libraries in the standard arduino libraries folder:
// * JeeLib
https://github.com/jcw/jeelib
#include <Ports.h>
#include <RF12.h>
#include <avr/sleep.h>
void setup () {
Serial.begin(115200);
Serial.println("\n[RF USB Rrx test]");
rf12_initialize(20, RF12_433MHZ, 4); //node,band,group
pinMode(7, OUTPUT);
digitalWrite(7, HIGH); // set the LED off
}
void loop () {
byte len;
if (rf12_recvDone() && rf12_crc == 0) {
// process incoming data here
digitalWrite(7, LOW); // set the LED on
/* print the group */
Serial.print(" grp: ");
Serial.print(rf12_buf[0], HEX);
/* print the node */
Serial.print(" node: ");
Serial.print((rf12_buf[1] & RF12_HDR_MASK),DEC);
/* print the length of payload */
Serial.print(" len: ");
Serial.print(rf12_buf[2], DEC);
/* print the content of payload */
Serial.print(" data");
for (len=3; len < rf12_buf[2]+3;len++){
Serial.print(":");
Serial.print(rf12_buf[len],HEX);
}
Serial.print(" ASCII:");
for (len=3; len < rf12_buf[2]-3;
len++){
Serial.print((char )(rf12_buf[len]));
}
Serial.println();
digitalWrite(7, HIGH); // set the LED off
/* send back an ack if required */
if (RF12_WANTS_ACK) {
digitalWrite(7, LOW); // set the RED LED off
rf12_sendStart(RF12_ACK_REPLY, &len, 1);
digitalWrite(7, HIGH); // set the RED LED off
}
}
}

If the packet information is somehow encrypted I would like to at least see some acknowledgement that the signal exists, can this be done?
Logged

Australia
Offline Offline
Sr. Member
****
Karma: 11
Posts: 491
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

The transceiver you have is an FSK radio, which means that it will only demodulate data from other similar FSK radios.
There are no particular standards which define how manufacturers transmit their data, so trying to make some kind of universal
decoder is pretty well impossible.
Logged

Pages: [1]   Go Up
Jump to: