All You Need To Know, In Seven Steps
In order to run application firmware, a Production Device must be blessed — ie. there must be a link between the device’s unique ID and the Production Device Group to which the latest application firmware has been deployed.
To make a Production Device, you must bless a Device Under Test (DUT). To do so, you call the imp API method server.bless() on the DUT, which is running factory firmware. Only factory firmware can call server.bless(). It can and should include hardware tests you have written, and run these before calling server.bless().
To get the factory firmware onto a DUT, you connect the DUT to the factory network: WiFi or Ethernet, depending on the type of imp in your product.
To get the factory network credentials onto the DUT, you perform BlinkUp in the factory, which to initiate by calling the imp API method server.factoryblinkup() on your factory BlinkUp fixture. You can only call server.factoryblinkup() on a factory BlinkUp fixture, which runs the same factory firmware as the DUTs — it is written for both types of hardware.
Putting all this together, this is what you need to put a product into production:
Using impCentral™ you:
Because the factory firmware runs on both the factory BlinkUp fixture and DUTs, it needs to distinguish between these two types of hardware. Electric Imp’s FactoryTools library and our sample factory firmware.