Raw OOK data from Prego 433 MHz wireless thermometer with Arduino & Dragino Lora (Semtech SX127x) module.
http://wiki.dragino.com/index.php?title=Lora_Shield

http://www.semtech.com/wireless-rf/rf-transceivers/sx1278/
ard_p.jpg

SX1278 library: https://github.com/open-electronics/LoRa/releases

#include <SX1278.h>

#define SERIAL_SPEED        9600
#define FREQ                433.98
#define RSSI_SAMPLES        1
#define STATE_STANDBY       1
#define STATE_FSRX          4
#define STATE_RX            5
#define S_DELAY             1
#define L_DELAY             10
#define NUM_SYNC_BYTES      3
#define DATA_PIN            7
#define SX_BEGIN            "SX.begin"
#define SX_BITRATE          "SX.readBPS "
#define SX_FREQ             "SX.readFreq "

bool rx;
byte syncBytes[NUM_SYNC_BYTES] = {0x01, 0x01, 0x01};

void setup() {
  rx = false;
  Serial.begin(SERIAL_SPEED);
  if (SX.begin()) {
    pinMode(DATA_PIN, INPUT);
    Serial.println(F(SX_BEGIN));
    delay(S_DELAY);
    SX.startModeFSKOOK();
    SX.setModulation(1); // OOK
        
    SX.setFreq(FREQ);
    Serial.print(F(SX_FREQ));
    Serial.println(SX.readFreq(), DEC);

    byte b = SX.SPIread(0x40);
 // Set DIO2 = data (DATA_PIN)
    bitSet(b, 2);
    bitSet(b, 3);
// Set DIO1 = dclk
    bitClear(b, 4);
    bitClear(b, 5);
    SX.SPIwrite(0x40, b);

// Set preamble length & polarity, 0=0xAA, 1=0x55
    SX.setPreamble(3, 0);
    //SX.setSync(1, syncBytes, NUM_SYNC_BYTES);
// Set sync on/off, sync bytes, sync length
    SX.setSync(0, NULL, 0);
    SX.setPacket(0, 0, 64);

    SX.setState(STATE_STANDBY);
    delay(S_DELAY);
    SX.setPackNoPack(0);  // Set continuous mode
    SX.setRSSIsample(RSSI_SAMPLES);
    // RegOokPeak (0x14). Bit 5, enables the Bit Synchronizer: 0 -> bit sync disabled
//(not possible in packet mode)
//1 -> bit sync enabled
    SX.setBitSync(0);
    // RegOokPeak (0x14). Bits 2-0, OokPeakTheshStep. Size of each decrement of the
//RSSI threshold in the
//OOK demodulator:
    // 0  0.5 dB   1  1.0 dB
    // 2  1.5 dB   3  2.0 dB
    // 4  3.0 dB   5  4.0 dB
    // 6  5.0 dB   7  6.0 dB
    SX.setOOKThrStep(0);
    // RegOokAvg (0x16). Bits 7-5, OokPeakThreshDec. Period of decrement of the
//RSSI threshold in the
// OOK demodulator:
    // 0  once per chip        1  once every 2 chips
    // 2  once every 4 chips   3  once every 8 chips
    // 4  twice in each chip   5  4 times in each chip
    // 6  8 times in each chip 7  16 times in each chip
    SX.setOOKThrDec(0);
    // RegOokPeak (0x14). Bits 4-3, selects the type of threshold in the OOK data slicer: 0 -> fixed,
//1 -> peak (default), 2 = average mode
    SX.setOOKthrMode(1);
    // RegOokFix (0x15). Fixed threshold for the Data Slicer in OOK mode. Floor threshold for the
//Data Slicer in OOK when Peak mode is used.
    // Default value: 0x0C
    SX.setOOKbaseThr(0xC);
    // RegPreambleDetect (0x1f). Enables Preamble detector when set to 1.
//The AGC settings supersed
//this bit during the startup AGC phase.
    // Bit 7, 0 -> turned off, 1 -> turned on
    SX.preambleDetect(0);
    SX.setState(STATE_FSRX);
    delay(S_DELAY);
    SX.setState(STATE_RX);
    delay(L_DELAY);
    rx = true;
  }
}

void loop() {
  if (rx) {
    unsigned long p = pulseIn(DATA_PIN, LOW);
    if (p > 1700) { Serial.print("LOW "); Serial.print(p, DEC); Serial.println(); }
    p = pulseIn(DATA_PIN, HIGH);
    if (p > 500) { Serial.print("HIGH "); Serial.print(p, DEC); Serial.println(); }
  }
}

Channel change
p_ch_change.jpg

Sync data
p_sync.jpg

Sensor data
p_rx_data.jpg