Connecting to TTN whit LR-FHSS modulation

Summary
I’m currently trying to connect to TTN whit LR-FHSS modulation, this is suppose to be supported by the Things Stack (Check that here), I’m using a LR1110 (this DevKit), using the LoRaWAN 1.0.4, and the RP002 1.0.3 for the regional parameters, I’m in the EU863-870 region.
I’m trying to connect trough OTAA, but the application server is dropping the join-request, it prompt a “uplink channel not found” error, from what I understand this error is supposed to be a mismatch between the gateway / region / device settings. The regional parameters in TTN are as follows:

  • Europe 863-870 MHz (SF9 for RX2 - recommended)
  • LoRaWAN Specification 1.0.4 RP002 Regional Parameters 1.0.3

I would like to know exactly what the problems is, and what should I do to solve it.
Logs
Here’s the connection’s error logs:

{
  "name": "ns.up.join.drop",
  "time": "2024-05-27T09:11:01.463622086Z",
  "identifiers": [
    {
      "device_ids": {
        "device_id": ------------------
        "application_ids": {
          "application_id": ------------------
        },
        "dev_eui": ------------------,
        "join_eui": ------------------
      }
    }
  ],
  "data": {
    "@type": "type.googleapis.com/ttn.lorawan.v3.ErrorDetails",
    "namespace": "pkg/networkserver",
    "name": "uplink_channel_not_found",
    "message_format": "uplink channel not found",
    "correlation_id": ------------------,
    "code": 5
  },
  "correlation_ids": [
    ------------------
  ],
  "origin": "ip-10-100-7-129.eu-west-1.compute.internal",
  "context": {
    "tenant-id": ------------------
  },
  "visibility": {
    "rights": [
      "RIGHT_APPLICATION_TRAFFIC_READ"
    ]
  },
  "unique_id":  ------------------
}

From the gateway I can see that the packet is being received whit the following data:

"settings": {
          "data_rate": {
            "lrfhss": {
              "operating_channel_width": 137000,
              "coding_rate": "1/3"
            }
          },
          "frequency": "868000000",
          "timestamp": 3695016880
     },

Hardware
I’m using a LR-1110 devkit, whit the following parameters on the LR-FHSS modulation:

  • OCW= 136719 HZ
  • CR= 1/3
  • Frequency hopping grid = 3906 HZ
  • Header counts = 3
  • Modulation type = GMSK488 (LR-FHSS)

The gateway configuration (extract from the config.json) is as follows:

"sx1301_conf": [
        {
            "chip_enable": true,
            "chip_center_freq": 865600000,
            "chip_rf_chain": 0,
            "chan_multiSF_0": { "chan_rx_freq": 864900000, "spread_factor": "7-12" },
            "chan_multiSF_1": { "chan_rx_freq": 865100000, "spread_factor": "7-12" },
            "chan_multiSF_2": { "chan_rx_freq": 865300000, "spread_factor": "7-12" },
            "chan_multiSF_3": { "chan_rx_freq": 865500000, "spread_factor": "7-12" },
            "chan_multiSF_4": { "chan_rx_freq": 865700000, "spread_factor": "7-12" },
            "chan_multiSF_5": { "chan_rx_freq": 865900000, "spread_factor": "7-12" },
            "chan_multiSF_6": { "chan_rx_freq": 866100000, "spread_factor": "7-12" },
            "chan_multiSF_7": { "chan_rx_freq": 866300000, "spread_factor": "7-12" },
            "chan_LoRa_std" : { "chan_rx_freq": 866100000, "bandwidth": 250000, "spread_factor": 7 },
            "chan_FSK"      : { "chan_rx_freq": 866600000, "bandwidth": 125000, "bit_rate": 50000 }
        },{
            "chip_enable": true,
            "chip_center_freq": 868000000,
            "chip_rf_chain": 0,
            "chan_multiSF_0": { "chan_rx_freq": 867500000, "spread_factor": "7-12" },
            "chan_multiSF_1": { "chan_rx_freq": 867700000, "spread_factor": "7-12" },
            "chan_multiSF_2": { "chan_rx_freq": 867900000, "spread_factor": "7-12" },
            "chan_multiSF_3": { "chan_rx_freq": 868100000, "spread_factor": "7-12" },
            "chan_multiSF_4": { "chan_rx_freq": 868300000, "spread_factor": "7-12" },
            "chan_multiSF_5": { "chan_rx_freq": 868500000, "spread_factor": "7-12" },
            "chan_multiSF_6": { "chan_rx_freq": 868700000, "spread_factor": "7-12" },
            "chan_multiSF_7": { "chan_rx_freq": 868900000, "spread_factor": "7-12" },
            "chan_LoRa_std" : { "chan_rx_freq": 868300000, "bandwidth": 250000, "spread_factor": 7 },
            "chan_FSK"      : { "chan_rx_freq": 869100000, "bandwidth": 125000, "bit_rate": 50000 }
        }],
        "lr_fhss_conf": {
            "enable": true,
            "rf_chain": 0,
            "center_freq": 868000000,
            "syncword": "2C0F7995",
            "chan_cfg": [ /* 16 virtual channels maximum */
                { "freq_hz": 867200000, "ocw": 137000 }, /* 200kHz channel */
                { "freq_hz": 867400000, "ocw": 137000 }, /* 200kHz channel */
                { "freq_hz": 867600000, "ocw": 137000 }, /* 200kHz channel */
                { "freq_hz": 867800000, "ocw": 137000 }, /* 200kHz channel */
                { "freq_hz": 868000000, "ocw": 137000 }, /* 200kHz channel */
                { "freq_hz": 868200000, "ocw": 137000 }, /* 200kHz channel */
                { "freq_hz": 868600000, "ocw": 336000 }  /* 400kHz channel */
            ]

Are you attempting to do this or are you attempting to connect to a hosted/self hosted/enterprise instance of TTS? Whilst TTS is the underlying s/w stack not all capabilities are supported on all deployments, e.g. TTN LNS (aka TTS(CE) aka TTS Sandbox), TTS Discovery Instance, TTS Enterprise…)

I’m currently using the TTS Sandbox (EU). Does this mean that this capability is not supported in this deployment? If that is the case, in which deployment of TTN would this capability be supported?

I’m not able to find any information regarding any kind of limitation on the use of LR-FHSS in the TTS Sandbox. I know that LR-FHSS was implemented in version V3.14 of TTS (you can check that here).

Any clarification regarding this would be very much appreciated. What I have found is that the LoRa modulation on the 2.4GHz band is supported on the enterprise deployment, but I was not able to find anything regarding the use of LR-FHSS bands.

Besides, the regional parameters supported at the time of adding an end-device include the ones that specifies the LR-FHSS functionality (RP002 1.0.3 in this case), that lead me to think that it should support LR-FHSS; otherwise, it would not be fully compliant with the RP002 1.0.3 regional parameters.

An ability to support does not equate to you must support everything, all at the same time. It is down to the network ‘owner’ to determine which freq plans and modulation schemes are to be supported by a given LNS/Network instatiation. In the case of TTN there are defined (and in some cases recommended frequency plans and SF’s etc.) subsets of support. e.g. for EMEA its 868Mhz band (EU 868) with typically SF7 - SF12 (LoRa modulation) supported with recommendation for RX2 at SF9, other territories specify e.g. which sub-bands/channels are supported within a freq plan. You need to read up what applies in your area and look at the options proferred in the various console configs/drop-downs. (e.g. US and AU allow for several 8 channel sub bands and there are therefore recommendations - e.g. FSB2 - to ensure all community resources are shareable and visible/usable by all where possible. On a private deployment you can make your own decisions on what is supported withing the capabilities of the systems.

Understood.
Looked it up and I found this official github where it shows the freq bands currently implemented, and like you said I was not able to find any of the LR-FHSS freq bands, which lead me to think that you are right and this capability is not currently supported for the Sandbox deployment, which mean that in order to connect whit the TTS whit LR-FHSS modulation I should host or pay for a custom frequency band configuration.

There is the no small matter of the electromagnetic to internet convertor aka gateway - it has to support LR-FHSS. These aren’t mainstream and last I saw ran to four figures (before the decimal point) and you had to write a note to the headmaster (Semtech) and get special permission for the gateway firmware.

On the plus side, I have seen this working in real life with TTS - but likely only on TTI + special gateway.

To put a clousure to this topic, in a private deployment (and modifying the frequencies bands), I was able to use the LR-FHSS, i had to configuring the frequencies and the corresponding DR’s, from 8 to 11 in my case

Out of interest - what gateway model and software do you use for that? Did you request the Special Sauce software from Semtech, or is there a gateway that comes with LR-FHSS support by default? I’ve seen more activity around this lately and would like to collect some knowledge about it. And to be ignored by everyone ending up here from Google, what kind of modifications did you make to the frequency bands? I hope they are still within legally allowed spectra :wink:

Hello, I don’t know the details on how do they got the gateway, but i do know that Semtech provided the gateway, and that is not easy task to achieve that, again, I don’t know the details.
I’m currently using Chirpstack V4 (if you want details, go here), regarding the frequencies, yes, as far as I’m concerned, we are in legally allowed spectra, but is a little shifted from the standard LoRa modulation (I’m currently using the 868 MHz and the 868.6 MHz frequencies), currently we are trying to understand why, but is the default configuration that Semtech provided.