How to activate Electrons w/o cellular connectivity

Hi
We are prototyping a product for a customer, and we are trying to figure out how to activate a Particle Electron without cellular connectivity. Say we need to ship a device to US but as we are based in EU we need to activate it here first. Is there a way to do it?

BR,
Mikko

Claiming an out-of-area Electron is not currently possible. The device must be online and breathing cyan in order to claim.

Here are some tips for working around this issue, however:

Setting up an out-of-area Electron

The Particle Electron comes in three varieties, global 2G (G350), and two varieties of 3G: U260 (Americas/Australia) and U270 (Europe/Asia/Africa).

This note explains how to set up a Electron that you want to ship to another location, such as for a demo. For example, you want to set up a U270 in the United States for a demo in Europe.

This technique also applies in areas where 2G is no longer supported, for example if you wanted to set up a 2G Electron in Japan for shipment to Europe.

Particle SIM card

The Particle SIM card is global. You can set up the SIM in one location and use it in another location.

The billing guide has additional information, but you have a home zone, say the United States (US$0.99/megabyte). If you travel to India, it’s in a different zone with a different rate (US$2.99/megabyte). You’ll initially be charged the $2.99 for the first megabyte of data in India, and the data usage there will be counted separately from your US data usage.

If you want to set up the SIM card ahead of time you can use the right-side option at https://setup.particle.io to activate only the Particle SIM card.

You can also set up the SIM from the setup web site when you get there, of course.

Electron

Here’s where things get a little trickier. You need to be online (breathing cyan) in order to complete the claiming process. This is impossible when you have an out-of-area Electron.

Fortunately, you can still load code by USB before the Electron has been claimed. So, for example, you could use the Particle CLI command:

particle flash --usb firmware.bin

Using this technique you can preload your code. You can also update the system firmware, if desired.

This is also a good time to note the device ID and ICCID, since you may need them later.

Connect the device to your computer using USB and put the device in listening mode (blinking dark blue) by holding down the SETUP (or MODE) button until the main status LED blinks dark blue, about 3 seconds.

Then issue the command:

particle identify

This will print out your device ID and ICCID.

The final step

Once the device reaches its actual location it will now have your code, and a SIM that should allow it to get online, breathing cyan. So power it up in the demo location, wait for it to reach breathing cyan, and then claim it.

This can be using the command line:

particle device add YOUR_DEVICE_ID

You can even do it remotely, issuing the command from the United States for the device in Europe.

You can also claim a device by its device ID from https://build.particle.io, or you can use Particle phone apps, if desired.

If you’re in a remote location and you’ve forgotten your device ID and don’t have access to a laptop with the Particle CLI, here are some other ways you can get the device ID.

4 Likes

Thanks Rickkas7! Do you know if there are any plans to enable claiming of out-of-area Electrons? Or even better, to make a variant with ublox u201 which would provide true global connectivity with Particle device and SIM card?

BR,
Mikko

Just throwing my suggestion out there, but what if you could claim a device with the device ID when the device itself is offline, and Particle does it’s backend claiming stuff the next time the device comes online. That way they could claim out of area devices and whenever the customer plugs it in, it would automatically add the device to your account.

There are some security concerns :sunglasses:
Imagine I could just claim any random device IDs hoping that any of them are not yet claimed and once someone switches it on, bang I have a new device connected to my account :wink:
I might even flash my own code as soon it comes online, maybe even just to lock the device against reprogramming.

@ScruffR Fully agree, some security measures would need to be put in to place. Maybe the claiming process must be paired with a serial or activation code that would require physical access to the device at some point?

Well, currently you have to do this in a insecure manner, like you ship out unclaimed devices, run a script that tries to claim the devices whenever they come online, hoping nobody else has claimed the device already. Often it is impossible to know when the product will be powered on for the first time. It would be a whole different story if you could do the claiming process when you have the actual device connected by USB for example.

Just an idea: how about using the data you get from particle identify to claim the device? So in other words you would need to know the device id, IMEI code and ICCID to claim a device before it is conencted to the network? Yes, its still posssible to guess these three for someone elses device, but I think it would be better than current method (ship unclaimed devices across the sea and hope for the best)).

Cheers,
Mikko