remote.it Bulk Registration requires you to upload a comma separated variable (CSV) file containing information about your mass produced Platforms. This procedure is described on the next page. The CSV file must include at least one value (which we call the Hardware ID) that must be unique for all of your Platforms. You also need to supply a Registration Key.
You may wish to try the interactive installer to test the connectd package on your Platform. If you do so, be sure to delete all remote.it Services using the interactive installer. Confirm that the folder /etc/connectd/services is empty prior to continuing with configuration for Bulk Registration.
Hardware ID: a unique machine-readable identifier which is known in advance by the OEM.
By default, this is the MAC address of the wlan0 network interface.
The Hardware ID can be easily changed to a different value (for example a serial number, IMEI, or MSN) by writing the desired value to the file /etc/connectd/hardware_id.txt.
Registration Key: a not necessarily unique identifier known in advance by the OEM.
It can be the same as the Hardware ID, a different unique value, or even a constant.
By default, the registration key is the MAC address of the eth0 network interface.
The registration key can be easily changed to a different value (for example a constant, serial number, IMEI, or MSN) by writing the desired value to the file /etc/connectd/registration_key.txt.
The Raspberry Pi 3 with built in wireless LAN, along with the Raspbian Stretch operating system, automatically calls the wireless LAN adapter "wlan0" and the Ethernet adapter "eth0". However, your Platform may not use these names, or it may only have one network interface available.
Run the "ip -br link" command to view your network interfaces, their names, and MAC addresses.
$ ip -br linklo UNKNOWN 00:00:00:00:00:00 <LOOPBACK,UP,LOWER_UP>enp3s0 UP 1c:1b:0d:be:19:0e <BROADCAST,MULTICAST,UP,LOWER_UP>wlp2s0 DOWN f0:03:8c:1b:e5:45 <BROADCAST,MULTICAST>$
This example (from a Gigabyte Brix PC running Ubuntu) shows 3 network adapters:
"lo" is the loopback network interface and should not be used for bulk registration.
"enp3s0" is the ethernet adapter on this device and is enabled ("UP"). Its MAC address is 1c:1b:0d:be:19:0e.
"wlp2s0" is the wireless adapter on this device and is disabled ("DOWN"). Its MAC address is f0:03:8c:1b:e5:45.
It is your choice which network adapter to use for Hardware ID and which to use for Registration Key. If you only have one network adapter available, we recommend that you use that for both the Hardware ID and the Registration Key.
For this example, let's suppose that you wish to use the MAC address of enp3s0 for your Hardware ID and the MAC address of wlp2s0 for your Registration Key.
Edit the file /usr/bin/connectd_options.
Find the line: REG_ID_ADAPTER="wlan0" and change it to REG_ID_ADAPTER="enp3s0"
Find the line: REG_KEY_ADAPTER="eth0" and change it to REG_ID_ADAPTER="wlp2s0"
Save the file /usr/bin/connectd_options
Delete the file /etc/connectd/hardware_id.txt
Delete the file /etc/connectd/registration_key.txt
Run the command "sudo connectd_control show". This confirms your settings for the Hardware ID and Registration Key.
$ sudo connectd_control showHardware ID is f0038c1be545Registration key is 1c1b0dbe190eBulk ID Code is missing. Add your code to bulk_identification_code.txt.$
Note that the colons have been removed from the MAC addresses.
We do not supply functions or scripts to return product serial numbers, IMEIs, MSN, or any other unique information for Bulk Registration, but it is easy for you to supply your own. The details will be specific to your product.
Let's suppose that your Platform uses an IMEI and an MSN, and that there are command line functions that will show these values. We will call those functions getIMEI and getMSN (the user must supply these functions). You'll want to be sure that the return value is just the value in question, without any spaces or extra text, for example:
$ getIMEI351756051523999$$ getMSN14932456079$
For testing purposes, run the following commands as root, or using "sudo":
getIMEI > /etc/connectd/hardware_id.txtgetMSN > /etc/connectd/registration_key.txtconnectd_control show
Example output of "sudo connectd_control show":
$ sudo connectd_control showHardware ID is 351756051523999Registration key is 14932456079Bulk ID Code is missing. Add your code to bulk_identification_code.txt.$
Add the Bulk Identification Code
First make sure you have completed the Product Definition step.
Now, add the Bulk Identification Code from the Product Information and Usage dialog to:
To confirm that your expressions for hardware_id and registration_key are working properly, and bulk_identification_code.txt is set properly, run "connectd_control show"
Sample output is:
~ $ connectd_control showHardware ID is f0038c1be545Registration key is 1c1b0dbe190eBulk ID Code is 4EA745E2-CFBD-CDEF-865E-61939EDC5A1E~ $
These values should match your expectations:
Run "sudo connectd_startup_control" and enter menu options as shown.
gary@gary-S551LA ~ $ sudo connectd_startup_controlremote.it connection installer Version: 2.3.17 lib_v2.1.17Modified: April 15, 2019 (library) April 17, 2019Build date: Thu Apr 18 18:15:02 PDT 2019======================= Main Menu =======================1) Set connectd_start to run at boot (systemd)2) Disable connectd_start at boot3) Exit=========================================================Choose a menu selection (1 - 3):1Created symlink from /etc/systemd/system/multi-user.target.wants/connectd_schannel.service to /lib/systemd/system/connectd_schannel.service.connectd_start configured to boot (systemd)======================= Main Menu =======================1) Set connectd_start to run at boot (systemd)2) Disable connectd_start at boot3) Exit=========================================================Choose a menu selection (1 - 3):3$
Confirm that connectd.service is configured to start at boot time. Check that the response to the command:
systemctl status connectd | grep Loaded
is exactly as shown:
Loaded: loaded (/lib/systemd/system/connectd.service; enabled; vendor preset: enabled)
Confirm that connectd_schannel.service is configured to start at boot time. Check that the response to the command:
systemctl status connectd_schannel | grep Loaded
is exactly as shown:
Loaded: loaded (/lib/systemd/system/connectd_schannel.service; enabled; vendor preset: enabled)
If the OEM cannot use the supplied systemd compatible startup scripts, then the following calls should be placed into the OEM's startup script.
# any vendor specific commands to set Hardware ID and Registration Key# should be placed here/usr/bin/connectd_start/usr/bin/connectd_schannel start