Azure IoT Hub - LoRaWAN Class Capabilities

Hi all,

I’ve got an integration setup between TTN and Azure IoT Hub. I am currently using the Azure IoT Hub as my primary device registry.

Following the documentation, I am updating device twins with their required LoRaWAN data, as below:

{
  "lorawan": {
    "devEui": "0004A30B001C5838",
    "joinEui": "800000000000000C",
    "lorawanVersion": "1.0.2",
    "regionalParametersVersion": "1.0.2-b",
    "frequencyPlanId": "EU_863_870_TTN",
    "appKey": "459B77D46A08C427254822A33F6FA1A3",
    "versionIdentifiers": {
      "bandId": "EU_863_870",
      "brandId": "the-things-products",
      "firmwareVersion": "1.0",
      "hardwareVersion": "1.0",
      "modelId": "the-things-node"
    }
  }
}

However, I need to set the class capability to ‘Class C’ on my devices. I can’t seem to see the tag for this. Any suggestions?

Cheers

Have used dozens of these in the past (and currently deployed) but never as Class C… I dont know if even capable - I suspect not! See below


If inclined you might dive into the code repository on GitHub and take a look in the details to see if B or C could be supported (or implement yourself?). Node was developed effectively as a technology demonstrator/learning device and never really optimised (e.g. out of the box not particularly low power (for a technology whose stength is low power/long battery life :wink: )

Note: LoRaWAN ‘requires’ that ALL devices support Class A, Class B & C, however, are optional so recommend you look carefully at specs for any devices you are looking at ‘off the shelf’, or perhaps question supplier wrt capability.

Hi @Jeff-UK ,

Apologies - I was using the above as an example!

We are actually building our own LoRaWAN controller, which is a type C and I’m looking to set the ‘Support Class C’ option in the network tab.

When this is manually set, it works fine. I’m just trying to set it up fully via the Azure IoT Hub. Currently, the device does register but it looks like it just defaults to Class A.

Does this make a bit more sense?

Cheers,

!!! Really?

(my emphasis)

Facts and details matter here if you are to get effective help and not divert/mis-direct volunteers efforts :wink:

That said apology accepted :slight_smile:

I dont use Azure IoT Hub myself so cant comment but would expect others to require you to provide real info on what you are doing wrt coding and configuration etc. Does the firmware/LoRaWAN stack of the device you are building support Class C? Can you share so other might evaluate and assist with configuration? Or is your issue with how to configure Azure settings? Again details & direction matter…

Hi @Jeff-UK,

To clarify - I am using Managing Devices | The Things Stack for LoRaWAN

In this example, it shows how modifying a device twin with the relevant JSON data creates the devices in TTN. This works and to be specific, the payload I am setting is below, which registers my customer device:

"tags": {
			"lorawan": {
				"devEui":                    device.DeviceID,
				"joinEui":                   device.AppEUI,
				"lorawanVersion":            device.LoRaWANVersion,
				"regionalParametersVersion": device.RegionalParameters,
				"frequencyPlanId":           device.FrequencyPlan,
				"appKey":                    device.AppKey,
			}
		}

My custom device is class C and when I manually create the device directly in TTN, I can set the ‘Support Class C’ option, which results in it working correctly. However, when creating the device through Azure IoT Hub, I see no option to set the device class type, which by default results in TTN treating the device as a class A.

My question is purely related to the Azure IoT Hub registration of a device and the LoRaWAN Class Capabilities option and not towards the custom controller (as it does perform expected when created manually).

I was hoping for a ‘lorawanClassCapabilities’ option or similar but I can’t find any literature on this.