import mqtt from 'mqtt'; import rpi433 from 'rpi-433'; console.log('Starting...'); const rfSniffer = rpi433.sniffer({ pin: 1, debounceDelay: 100 }); const rfEmitter = rpi433.emitter({ pin: 0, pulseLength: 500 }); // Connection to MQTT console.log('Connecting to MQTT'); const mqttClient = mqtt.connect('mqtt://localhost'); mqttClient.on('connect', () => { console.log('Connected to MQTT'); // Subscribe to topic 433 mqttClient.subscribe('433'); }); // When receiving a code from RF rfSniffer.on('data', (data) => { console.log(`Receive code ${data.code} from RF`);
/* * Date: 22/12/2015 * Author: Tiago Ricardo * Description: 433 MHz receiver and transmitter */ var rpi433 = require('rpi-433'), rfSniffer = rpi433.sniffer(3, 500), //Snif on PIN 2 with a 500ms debounce delay rfSend = rpi433.sendCode; exports.Start = function(clientMQTT,mainDeviceId) { // Receive rfSniffer.on('codes', function (code) { console.log('Code received: '+code); // send MQTT with the code clientMQTT.publish(mainDeviceId +'/433','{"value":"'+ code +'","date":"' +new Date() +'"}', {retain: true}); }); } exports.Send = function(code) { // Send rfSend(code, 0, function(error, stdout) { //Send 1234 if(!error) console.log(stdout); //Should display 1234 }); }