RAK7244 - Gateway global_config.json file

Issue: We have an ESP32 node using the RadioLib library, which works fine with a WS1310 Gateway, but fails to connect when using a RAK7244 Gateway.

Setup: * Node: ESP32 + SX1262 LoRa module

  • Library: RadioLib

Server:Chirpstack

Details: We have interfaced the SX1262 with the ESP32 using SPI and communicated with the ChirpStack server successfully via WS1310. However, the same node does not connect when using the RAK7244 Gateway. The error we receive is:

Setup ... 
Initialise the radio
Join ('login') the LoRaWAN Network
Join failed - RADIOLIB_ERR_NO_JOIN_ACCEPT (-1116)

We also tried updating the global_config.json file for RAK7244, but it did not resolve the issue.

  1. global_config.json – RAK7244
{
	"SX1301_conf": {
		"lorawan_public": true,
		"clksrc": 1,
		"clksrc_desc": "radio_1 provides clock to concentrator for most devices except MultiTech. For MultiTech set to 0.",
		"antenna_gain": 0,
		"antenna_gain_desc": "antenna gain, in dBi",
		"radio_0": {
			"enable": true,
			"type": "SX1257",
			"freq": 865000000,
			"rssi_offset": -166.0,
			"tx_enable": true,
			"tx_freq_min": 865000000,
			"tx_freq_max": 867000000,
			"tx_notch_freq": 129000
		},
		"radio_1": {
			"enable": true,
			"type": "SX1257",
			"freq": 866385000,
			"rssi_offset": -166.0,
			"tx_enable": false
		},
		"chan_multiSF_0": {
			"desc": "Lora MAC, 125kHz, all SF, 865.0625 MHz",
			"enable": true,
			"radio": 0,
			"if": -137500
		},
		"chan_multiSF_1": {
			"desc": "Lora MAC, 125kHz, all SF, 865.4025 MHz",
			"enable": true,
			"radio": 0,
			"if": 202500
		},
		"chan_multiSF_2": {
			"desc": "Lora MAC, 125kHz, all SF, 865.9850 MHz",
			"enable": true,
			"radio": 1,
			"if": -400000
		},
		"chan_multiSF_3": {
			"desc": "disabled",
			"enable": false
		},
		"chan_multiSF_4": {
			"desc": "disabled",
			"enable": false
		},
		"chan_multiSF_5": {
			"desc": "disabled",
			"enable": false
		},
		"chan_multiSF_6": {
			"desc": "disabled",
			"enable": false
		},
		"chan_multiSF_7": {
			"desc": "disabled",
			"enable": false
		},
		"chan_Lora_std": {
			"desc": "disabled",
			"enable": false
		},
		"chan_FSK": {
			"desc": "disabled",
			"enable": false
		},
		"tx_lut_0": {
            "pa_gain": 0,
            "mix_gain": 9,
            "rf_power": -6,
            "dig_gain": 0
        },
        "tx_lut_1": {
            "pa_gain": 0,
            "mix_gain": 12,
            "rf_power": -3,
            "dig_gain": 0
        },
        "tx_lut_2": {
            "pa_gain": 0,
            "mix_gain": 15,
            "rf_power": 0,
            "dig_gain": 0
        },
        "tx_lut_3": {
            "pa_gain": 1,
            "mix_gain": 8,
            "rf_power": 3,
            "dig_gain": 1
        },
        "tx_lut_4": {
            "pa_gain": 1,
            "mix_gain": 9,
            "rf_power": 6,
            "dig_gain": 0
        },
        "tx_lut_5": {
            "pa_gain": 1,
            "mix_gain": 11,
            "rf_power": 10,
            "dig_gain": 0
        },
        "tx_lut_6": {
            "pa_gain": 1,
            "mix_gain": 12,
            "rf_power": 11,
            "dig_gain": 1
        },
        "tx_lut_7": {
            "pa_gain": 1,
            "mix_gain": 12,
            "rf_power": 12,
            "dig_gain": 0
        },
        "tx_lut_8": {
            "pa_gain": 2,
            "mix_gain": 11,
            "rf_power": 13,
            "dig_gain": 1
        },
        "tx_lut_9": {
            "pa_gain": 2,
            "mix_gain": 11,
            "rf_power": 14,
            "dig_gain": 0
        },
        "tx_lut_10": {
            "pa_gain": 3,
            "mix_gain": 8,
            "rf_power": 16,
            "dig_gain": 1
        },
        "tx_lut_11": {
            "pa_gain": 3,
            "mix_gain": 8,
            "rf_power": 20,
            "dig_gain": 0
	},
	"tx_lut_12": {
		"desc": "TX gain table, index 12",
		"pa_gain": 3,
		"mix_gain": 12,
		"rf_power": 23,
		"dig_gain": 1
	},
	"tx_lut_13": {
		"desc": "TX gain table, index 13",
		"pa_gain": 3,
		"mix_gain": 13,
		"rf_power": 25,
		"dig_gain": 0
	},
	"tx_lut_14": {
		"desc": "TX gain table, index 14",
		"pa_gain": 3,
		"mix_gain": 13,
		"rf_power": 26,
		"dig_gain": 0
	},
	"tx_lut_15": {
		"desc": "TX gain table, index 15",
		"pa_gain": 3,
		"mix_gain": 13,
		"rf_power": 27,
		"dig_gain": 0
        }
	},
	"gateway_conf": {
		"gateway_ID": "0000000000000000",
		/* change with default server address/ports, or overwrite in local_conf.json */
	"server_address": "127.0.0.1",
		"serv_port_up": 1700,
		"serv_port_down": 1700,
		/* adjust the following parameters for your network */
		"keepalive_interval": 10,
		"stat_interval": 30,
		"push_timeout_ms": 100,
		/* forward only valid packets */
		"forward_crc_valid": true,
		"forward_crc_error": false,
		"forward_crc_disabled": false,
		/* gps enable */
		"gps_tty_path": "/dev/i2c-1",
		"fake_gps": false,
		"ref_latitude": 10,
		"ref_longitude": 20,
		"ref_altitude": -1,
		"autoquit_threshold": 20,
		"beacon_period": 0, /* disable class B beacon */
		"beacon_freq_hz": 866500000, 
		"beacon_freq_nb": 1, 
		"beacon_freq_step": 0, 
		"beacon_datarate": 8, 
		"beacon_bw_hz": 125000, 
		"beacon_power": 27
	}

}


  1. global_conf.json.sx1262.in865
{
  "SX130x_conf": {
    "com_type": "SPI",
    "com_path": "/dev/spidev0.0",
    "lorawan_public": true,
    "clksrc": 0,
    "full_duplex": false,

    "antenna_gain": 0,

    "radio_0": {
      "enable": true,
      "type": "SX1250",
      "freq": 865000000,
      "rssi_offset": -215.4,
      "tx_enable": true,
      "tx_freq_min": 865000000,
      "tx_freq_max": 867000000,
      "tx_gain_lut": [
        { "rf_power": 10, "pa_gain": 1, "pwr_idx": 0 },
        { "rf_power": 12, "pa_gain": 1, "pwr_idx": 1 },
        { "rf_power": 14, "pa_gain": 1, "pwr_idx": 2 },
        { "rf_power": 16, "pa_gain": 1, "pwr_idx": 3 },
        { "rf_power": 18, "pa_gain": 1, "pwr_idx": 4 },
        { "rf_power": 20, "pa_gain": 1, "pwr_idx": 5 },
        { "rf_power": 22, "pa_gain": 1, "pwr_idx": 6 },
        { "rf_power": 24, "pa_gain": 1, "pwr_idx": 7 },
        { "rf_power": 26, "pa_gain": 1, "pwr_idx": 8 },
        { "rf_power": 27, "pa_gain": 1, "pwr_idx": 9 }
      ]
    },

    "radio_1": {
      "enable": true,
      "type": "SX1250",
      "freq": 866000000,
      "rssi_offset": -215.4,
      "tx_enable": true,
      "tx_freq_min": 865000000,
      "tx_freq_max": 867000000,
      "tx_gain_lut": [
        { "rf_power": 10, "pa_gain": 1, "pwr_idx": 0 },
        { "rf_power": 12, "pa_gain": 1, "pwr_idx": 1 },
        { "rf_power": 14, "pa_gain": 1, "pwr_idx": 2 },
        { "rf_power": 16, "pa_gain": 1, "pwr_idx": 3 },
        { "rf_power": 18, "pa_gain": 1, "pwr_idx": 4 },
        { "rf_power": 20, "pa_gain": 1, "pwr_idx": 5 },
        { "rf_power": 22, "pa_gain": 1, "pwr_idx": 6 },
        { "rf_power": 24, "pa_gain": 1, "pwr_idx": 7 },
        { "rf_power": 26, "pa_gain": 1, "pwr_idx": 8 },
        { "rf_power": 27, "pa_gain": 1, "pwr_idx": 9 }
      ]
    },

    "chan_multiSF_0": { "enable": true,  "radio": 0, "if":  62500 },
    "chan_multiSF_1": { "enable": true,  "radio": 0, "if": 187500 },
    "chan_multiSF_2": { "enable": true,  "radio": 0, "if": 312500 },
    "chan_multiSF_3": { "enable": true,  "radio": 0, "if": 437500 },
    "chan_multiSF_4": { "enable": true,  "radio": 1, "if": -437500 },
    "chan_multiSF_5": { "enable": true,  "radio": 1, "if": -312500 },
    "chan_multiSF_6": { "enable": true,  "radio": 1, "if": -187500 },
    "chan_multiSF_7": { "enable": true,  "radio": 1, "if":  -62500 },

    "chan_Lora_std":  { "enable": true, "radio": 1, "if": 550000, "bandwidth": 125000, "spread_factor": 7 },
    "chan_FSK":       { "enable": false }
  },

  "gateway_conf": {
    "gateway_ID": "0016C001F122C229",
    "server_address": "127.0.0.1",
    "serv_port_up": 1700,
    "serv_port_down": 1700,
    "keepalive_interval": 10,
    "stat_interval": 30,
    "push_timeout_ms": 100,
    "forward_crc_valid": true,
    "forward_crc_error": false,
    "forward_crc_disabled": false
  }
}

Observation:

  • Node joins fine with WS1310, but fails with RAK7244.
  • RADIOLIB_ERR_NO_JOIN_ACCEPT (-1116) occurs even after updating global_config.json.

Request:
We are not sure why the ESP32 + SX1262 node is failing to join via RAK7244. Could someone please help us identify what might be wrong?