rc433/sniffer.c

changeset 20
f7f9463cdefd
child 23
d820a6f3ec16
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/rc433/sniffer.c	Sun May 04 17:18:27 2014 +0200
@@ -0,0 +1,61 @@
+/*****************************************************************************
+ * Copyright (C) 2014
+ *   
+ * Michiel Broek <mbroek at mbse dot eu>
+ *
+ * This file is part of the mbsePi-apps
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation; either version 2, or (at your option) any
+ * later version.
+ *
+ * mbsePi-apps is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with EC-65K; see the file COPYING.  If not, write to the Free
+ * Software Foundation, 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+ *****************************************************************************/
+
+#include "../lib/mbselib.h"
+#include "sniffer.h"
+
+
+int main(int argc, char *argv[]) {
+  
+    // This pin is not the first pin on the RPi GPIO header!
+    // Consult https://projects.drogon.net/raspberry-pi/wiringpi/pins/
+    // for more information.
+    int PIN = 2;
+     
+    if (wiringPiSetup() == -1)
+	return 0;
+
+    enableReceiveIRQ(PIN);  // Receiver on inerrupt 0 => that is pin #2
+    
+    while(1) {
+ 
+	if (available()) {
+	    unsigned long value = getReceivedValue();
+    
+	    if (value == 0) {
+		printf("Unknown encoding\n");
+	    } else {    
+	printf("Protocol %d received 0x%lx\n", getReceivedProtocol(), value);
+	    }
+	    resetAvailable();
+    
+	} else {
+	    /*
+	     * Don't hog the CPU
+	     */
+	    delay(10);
+	}
+    }
+
+    exit(0);
+}
+

mercurial