Electric Imp maintains one Public ImpCloud™ that is hosted on Amazon Web Services (AWS). You can log into impCentral™ here.
impCentral provides a ‘breadcrumb’ navigation bar which lists (left to right) the account you have logged in to (or selected, if you are collaborating on accounts other than your own), your selected product, and your selected Device Group. Each item in the sequence indicates its type, and Product entries feature a switch which allows you to flip between Development and Production zones. Each item in the chain also has a menu arrow: click on this to pop up a list of other items (Accounts, Products, Device Groups, etc.) which you can select to navigate to.
A Product embodies a single Electric Imp-based product or product family. As such, it encompass all of the many combinations of application and factory firmware that are required to develop a product, put it into production and to make it successfully perform its role in the field. That can include the many versions of an application as it evolves, along with all the variants of each of those versions for the different SKUs within the product line. Please see the impCentral User Guide for more information.
A Device Group brings together development code with the development devices to which that code will be deployed. There are different types of Device Group: Development, which is used to develop and test application firmware, and Test Factory, which is used to test factory firmware on both BlinkUp fixtures and Devices Under Test (DUTs). Production Device Groups organize Production Devices (DUTs that have been blessed) and are assigned application firmware promoted from a Development Device Group. Please see the impCentral User Guide for more information.
When you log into impCentral, you will have no Products. Click the Create New Product button to set up your first Product: impCentral will ask you for a name for the new Product and invite you to name the Product’s first Development Device Group. All Products need at least one Development Device Group in which you create the Product’s application firmware. Click on the selected account in the navigation bar to get a list of the account’s Products and to show the Create New Product button.
If you need further Development Device Groups, you can create them at any time by selecting a Product’s Development Zone from the Products list presented by impCentral, and then clicking the Create New Device Group button.
If you are the holder of a free Electric Imp account, you will not be able to view or access factory- and production-oriented functionality unless you have been granted access to these features as a collaborator by another account holder who has these privileges.
If you are able to work with Test Factory Device Groups, you can create them at any time by selecting a Product’s Development Zone from the Products list presented by impCentral, clicking on the Factory Code icon (</>F) in the left-side panel, and then clicking Create New Device Group.
Promotion is the act of making a development code deployment available for use in the production environment. For example, if updated application firmware is to be deployed to Production Devices in the field, once development work on it has been completed in a Development Device Group, it must first be promoted. This makes it available to be deployed (via the Production Zone) to the Production Device Group(s) which hold the target Production Devices.
If you are the holder of a free Electric Imp account, you will not be able to view or access factory- and production-oriented functionality, including the Promote button, unless you have been granted access to these features as a collaborator by another account holder who has these privileges. The Promote button is a production feature.
If you are not a collaborator, as a free account holder you will only be able to create Products and Development Device Groups for work with development code and development devices.
Every Device Group has a Deployments list. Every time you click Build and Force Restart in a Device Group’s code editor, the compiled code (assuming it passes a syntax check) becomes a new deployment; it is deployed to the Device Group’s assigned devices and added to the Deployments list. Click on the Deployments side panel icon () to view the list of Deployments made to the Device Group. Earlier versions of your code are made available in read-only form — click on a SHA to show the code in the code editor. Now click on the Edit button to make a copy of the earlier version as a new code editor draft.
No. impCentral always saves the code in the code editor so that it’s available the next time you log back in. However, until you click Build and Force Restart, the code will not be deployed to Device Group’s assigned devices, or be available to be promoted for production use if you have production privileges.
Only if they are all in the same Device Group. You always deploy development code to a specific Device Group — by clicking on Build and Force Restart. To deploy the same code to Pre-Production, Production or Factory Device Groups, you will need to promote the code first.
Build checks the code syntax and if there are no issues, compiles the code and stages it in the impCloud. The Device Group’s devices will not receive the code until they restart — which does not happen when you click Build. To trigger a restart, click on the triangle to the right of Build and select either ‘Build and Force Restart or Build and Conditional Restart — these options will build the code and trigger device restarts.
To discover the different between forced and conditional restarts, please see ‘Polite Squirrel Deployment’.
Note the deployed production code’s SHA and locate that SHA in the appropriate Development or Test Factory Device Group’s Deployments list. You can then click in the listed SHA to open the code in the code editor; click Edit to create a new draft based on the viewed code. Apply your fix, and click Build and Force Restart to deploy the updated code to your test devices. If the fix is good, click on Promote to make the new deployment (indicated by a new SHA, which you should note) available for deployment to your Production Devices or BlinkUp Fixtures. In the Production Zone, locate the original Production or Factory Device Group and click Deployments* under the **MANAGE column. The Deployments list will appear; click the New Deployment button, then select the updated code’s SHA, enter a description and click the Deploy button to release the new code.
Alternatively, you might create a new Production Device Group, move some production devices to that group and then deploy the updated code to then, allowing you to test the update on selected field devices before deploying it to all production devices.
No. When you deploy code to a Development Device Group, no Production Device Group’s devices are updated — they will need to be updated separately by first promoting the updated code and then deploying the promoted deployment to the chosen Production Device Group.
Assuming you are viewing the newly built code in the code editor, click on the Promote button. This will make the code available to be deployed to the devices in any of your other Device Groups. If the code is in a draft form, ie. it has not been compiled in the Electric Imp impCloud, you will need to run it on the Device Group’s devices first: click on Build and Force Restart button in the code editor. Now it can be promoted. Promoted application firmware can be deployed to Production Device Groups and to Test Blessed Devices; promoted factory firmware can be deployed to Factory Device Groups. Production deployments are made in the Product’s Production Zone.
Just re-assign the fixture to one of the second Product’s Factory Device Groups or, for testing, any of its Test Factory Device Groups.
You will need a device’s ID, MAC address or agent URL. Enter this information into the Device Lookup field in the devices menu (). This will call up a device information view for the specified device. Now click the LOGS tab to view new log entries for that device.
Go to the Product’s Production Zone and locate the Production Device Group to which the blessed device has been assigned. Click Devices under MANAGE. In the list of Production Devices which now appears, locate the device you wish to unbless and then click Delete under MANAGE for that device. It will now be unblessed and removed from your account.
If you already know the blessed device’s ID, MAC address or agent URL, you can enter that information into the Device Lookup field in the devices menu (). This will call up a device information view for the specified device. Look for the Actions menu at the top right of view: select Delete from this menu to unbless the device.
Webhooks are now specific to a given Production Device Group or Test Factory Device Group each Device Group can have it’s own set of Blessing and BlinkUp webhooks. After you have created a Production Device Group or Test Factory Device Group, click Settings under the MANAGE column to call up the settings for the specified group. Here you can enter the webhook URL and the Content Type by which the data will be sent.
You can get more information on webhooks, here.
Not at this time; this is a feature on the impCentral roadmap. For the time being, you can get this information by locating a Production Device Group in the Product’s Production Zone. Click Devices under the MANAGE column to call up a list of all the devices assigned to the specified Production Device Group. Look at this list’s LAST ENROLLED column: ‘unenrolled’ devices are those which have been blessed but not yet activated. Those devices with a last enrolled date have been activated. Click on the column title to sort the list by these types.