Device Profiles
API Endpoints
See the ECP LoRaWAN Device Driver help page for details on the API endpoints available for the device driver. The device profiles can be managed using /drivers/lorawan/device-profiles endpoints.
Create Placeholder Device Profiles through the API
Device profiles have many configuration variables that can be set. The total number of combinations is huge. See Chirpstack Device Profiles.
{
"specifications": "1.0.3,1.0.4",
"regParamsRevisions": "A,B",
"joinTypes": "ABP,OTAA",
"classes": "A"
}
POST /drivers/lorawan/device-profiles/generate
Only "specifications" is required. It is a comma separated list of LoRa specifications. In practice one would use just one (such as "1.0.3") or maybe two.
If "regParamsRevisions" (a comma separated list of LoRa region parameters) is left blank, then all available options will be generated.
If "joinTypes" (a comma separated list of LoRa join types, only options ABP and OTAA) is left blank, then all available options will be generated.
If "classes" (a comma separated list of LoRa classes; A, B, and C) is left blank, then class "A" will be generated. This class is always generated because all LoRa devices are class A. Class B and C are in addition to.
The generated profiles have "auto-generated" names which are used to see if a profile was generated in the past. So, if a profile is renamed then a subsequent "generate" API call would create a new "default" profile. (The renamed one is left intact.)
The placeholder device profiles can be used without modifications, if necessary.
Auto-generate Placeholder Device Profiles
The driver can auto-generate device profiles at start-up. To do this, the following environment variables need to be set.
- name: LORA_AUTO_GENERATE_DEVICE_PROFILES_SPECIFICATIONS
value: ""
- name: LORA_AUTO_GENERATE_DEVICE_PROFILES_REG_PARAMS_REVISIONS
value: ""
- name: LORA_AUTO_GENERATE_DEVICE_PROFILES_JOIN_TYPES
value: ""
- name: LORA_AUTO_GENERATE_DEVICE_PROFILES_CLASSES
value: ""
spec:
set:
aseLorawanDriver.lora.generateDeviceProfiles.specifications: ""
aseLorawanDriver.lora.generateDeviceProfiles.regParamsRevisions: ""
aseLorawanDriver.lora.generateDeviceProfiles.joinTypes: ""
aseLorawanDriver.lora.generateDeviceProfiles.classes: ""
See previous section for an explanation of values to be used.