QR Code Generation
General
We are using different types of QR codes that are used to provision devices. The QR codes contain a device identifier such as a serial number and some secret key that gives us access to that device. By scanning one of these codes, an enrollment can be generated in various apps and this enrollment can also be imported into our platform. It is recommended that this QR code format is used for all devices running BlueRange Mesh to enable a uniform way of enrolling these devices with the same application. Vendors are free to use other ways of distributing the enrollment information but they will lose compatibility with our tools and the ecosystem.
You can download our BlueRange Admin app from the Apple App Store to enroll devices with our BlueRange platform.
Device / Node QR Code
The device qr code is URL encoded to save space and to transmit as much as possible information. It is currently in version 1 and its contents can change in later versions, e.g. encryption could be added. The order of fields is not necessarily in the same order as documented. If special characters are needed, these should be url encoded.The different fields are:
FieldName | Description | Default | Mandatory (Yes = y, No=n) |
---|---|---|---|
qt |
The qr code type (1 = Node QR Code) |
- |
y |
v |
The version identifier in decimal notation, currently 1 |
- |
y |
mf |
The manufacturer id in hexadecimal notation according to the Bluetooth Standard manufacturer ids. This is 0x024D for M-Way |
- |
y |
s |
The serial number in ASCII format |
- |
y |
nk |
The nodeKey in hex notation that can be used to connect to this device (uppercase, no seperator) |
- |
y (alternatively "kt" and "k" can be used) |
nm |
Human Readable name for this device |
Autogenerated with by the enrollment application from a hardcoded name and the serial number |
n |
kt |
Key Type as integer (from FM_KEY_ID_*), used to give type of the key together with the "k" parameter |
- |
n (mandatory if "nk" not given) |
k |
Key in hex notation (uppercase, no seperator), only together with keyType, if keyType is FM_KEY_ID_NODE, this is the same as if nk were given |
- |
n (mandatory if "nk" not given) |
dt |
The deviceType is the same as the platform in our BlueRange backend (dt=BLENODE for mesh node, dt=EDGEROUTER for BlueRange Gateway, dt=ASSET for asset tags, dt=MESHBRIDGE for a generic Gateway) |
dt=BLENODE |
n |
qt=1&v=1&mf=024D&s=BBBBB&nk=12345678123456781234567812345678&dt=BLENODE
qt=1&v=1&mf=024D&s=BBBBB&nk=12345678123456781234567812345678&dt=MESHBRIDGE
If the manufacturer id of M-Way is being used, the device must adhere to all standards defined in this specification. No additional fields may be added. The serial number must be picked from the testing range! For production devices, you must either use your own company identifier or contact us for more information. |
The device platforms EDGEROUTER and ASSET must adhere to a strict specification which is not open source at the moment. For a generic gateway solution, use the MESHBRIDGE platform. |
QR codes can be generated with FruityDeploy (not yet open source but distributed to partners). You can also use e.g. http://goqr.me/de/ or some other web service.
Manufacturer Specific QR Code Data
Other fields are specific depending on the manufacturer of the device. These can be used to add additional data that might be necessary to provide vendor specific context.
EnOcean QR Code
Some of our enrollment tools also recognize the EnOcean QR code format for enrolling EnOcean BLE devices. The EnOcean QR code is encoded in a different format as specified by this documentation:
5.2 (Camera based commissioning): https://www.enocean.com/en/enocean_modules_2.4ghz_ble/single-double-rocker-wall-switch-for-ble-eswsb-edwsb/user-manual-pdf/