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

Example of a Mesh Node QR code

qt=1&v=1&mf=024D&s=BBBBB&nk=12345678123456781234567812345678&dt=BLENODE

Example of a generic Gateway QR code

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.

M-Way Solutions (0x024D)

Once the M-Way Solutions manufacturer id is used, you must not add any additional arguments to the QR code. In case custom fields are necessary, your own manufacturer id must be used.

Other Vendors

We have additional information on QR codes in our commercial documentation.

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:

Exemplary EnOcean Switch:

QR Code Data read from the switch is 30SE21500003215+Z1AEAE8B80353287356675BE53D9DF609+30PE8221-A280+2PDA01+S07000461

Necessary Data to provision the switch:

  • Ble Address: E21500003215

  • Security Key: 1AEAE8B80353287356675BE53D9DF609