HW: Arduino Due + Dragino Lora Module (Semtech SX1278)
SW: Universal Radio Hacker, LoraLib for Arduino

435 MHz FSK 4800 bps 0xAA preamble + 8 sync bytes, no FSK data shaping.

urhscr.jpg
https://i.ibb.co/6s29rWf/urhscr.jpg

URH sniff protocol managed to show correct preamble and sync bytes (almost). Samples per symbol value = 58, 250 000 samples/second / 4800 = 52, but a bit greater values worked better. Bits per symbol = 1 (2-FSK)

#include <LoRaLib.h>

SX1278 fsk = new LoRa;

void setup() {
  Serial.begin(9600);

  Serial.print(F("Initializing ... "));
  int state = fsk.beginFSK();
  if (state == ERR_NONE) {
    Serial.println(F("success!"));
  } else {
    Serial.print(F("failed, code "));
    Serial.println(state);
    while (true);
  }

  state = fsk.setFrequency(435.0);
  state = fsk.setBitRate(4.8);
  state = fsk.setFrequencyDeviation(10.0);
  state = fsk.setRxBandwidth(50.0);
  state = fsk.setOutputPower(10.0);
  state = fsk.setCurrentLimit(100);
  state = fsk.setDataShaping(0.0);
  uint8_t syncWord[] = {0x41, 0x42, 0x43, 0x44,
                        0x45, 0x46, 0x47, 0x48};
  state = fsk.setSyncWord(syncWord, 8);
  if (state != ERR_NONE) {
    Serial.print(F("Unable to set configuration, code "));
    Serial.println(state);
    while (true);
  }
}

void loop() {
  byte byteArr[] = {0x11, 0x16, 0x11, 0x16, 0x11, 0x16, 0x11};
  int state = fsk.transmit(byteArr, 7);
  if (state == ERR_NONE) {
    Serial.println(F("Packet transmitted successfully!"));
  } else if (state == ERR_PACKET_TOO_LONG) {
    Serial.println(F("Packet too long!"));
  } else if (state == ERR_TX_TIMEOUT) {
    Serial.println(F("Timed out while transmitting!"));
  } else {
    Serial.println(F("Failed to transmit packet, code "));
    Serial.println(state);
  }
  delay(5000);
}