Bosch IoT Device Management

Set feature properties

You are currently at Bosch IoT Manager Console (Dashboard) > Device Management > Feature Info view


Instead of invoking an action on a feature through the respective buttons in the Actions Info panel, you can change the feature's property values directly - without executing the script of the respective action. The different ways to do that will be explained below.

Device features have a current state and a desired state.

The current state represents the properties and their values currently reported by the device. The desired state, on the other hand, reflects the desired properties and values that you, or an application respectively, wish to apply on the device, for example in order to change its configuration or behavior. In order to set the properties of a device, it should be online - otherwise you will get a timeout error. However, if you set the properties as desired, they will be persisted in the desired state of the feature and will be applied when the device comes online, unless the device rejects them.

Non-writable properties can be set only as desired properties.


Set writable properties

With writable properties, there is a Set button to the right of each field. When you select or enter a new value for a property, its Set button will become active.

images/confluence/download/attachments/2111257442/dm_userGuide_setWritableFeature.png


Every time you click the Set button, there will be a pop-up - the Property change options dialog as shown on the screenshot below.

images/confluence/download/attachments/2111257442/Property-change-options-dialog.png

There you can choose whether the change should affect:

  • only the digital twin of the device (Change twin), or

  • the physical device (Send to device). If the physical device supports the command it may also set the property in its digital twin.

For example, if you want to change the state property and you choose the Send to device option, you will be calling the $set.state command - if this property does not have a category; $set.configuration/state - if this property's category is configuration; and $set.status/state - if this property's category is status.

  • as a third option, you may also save the new value as the desired state of this property (Save as desired property).

If you set a property as desired, there will be an additional icon next to the Set button to reflect it. It is a toggle button with which you can switch between seeing the current state or the desired state of the property. When it is clicked, you are viewing the desired state and the name of the feature will appear blue instead of black to remind you that you are not viewing the current state.

images/confluence/download/attachments/2111257442/dm_userGuide_setWritableFeature_desired_2.png

Set non-writable properties

If the property is not writable, the button to the right of its field will be Set as desired instead of just Set, and the tooltip will remind you of the specifics. When you enter a value in the respective field, this button will become active, as on the screenshot below. Click it to set the property value as desired.

Upon that, there will be an additional icon next to the Set as desired button to reflect it. It is a toggle button with which you can see the current state or the desired state of the property. When it is clicked, you are viewing the desired state and the name of the property will appear blue instead of black to remind you that you are not viewing the current state.

images/confluence/download/attachments/2111257442/dm_userGuide_setNonWritableFeature_desired_2.png

By clicking the respective toggle button on the toolbar, you can see the whole desired state of the selected feature in a tree view. In that view you can also add or remove desired properties using the respective add or remove buttons as shown on the screenshot.

images/confluence/download/attachments/2111257442/dm_userGuide_view_all_desired.png


With complex properties which have nested structures, for example such in JSON format, each nested property that you are trying to set as desired will be sent as a separate request and only it will be updated, rather than the whole JSON structure.

For them, you will get a warning dialogue as on the screenshot below.
images/confluence/download/attachments/2111257442/dm_userGuide_setComplexPropsAsDesired.png


Property formats

Properties are displayed differently depending on their type and based on that the console allows you to invoke different actions on them, as explained below.

Simple key-value properties

For property fields where you have a combobox, or where you can enter some number or text, you will have only the Set or respectively the Set as desired button.

images/confluence/download/attachments/2111257442/dm_userGuide_features_setProperty.png

JSON properties

For JSON properties, you can edit the JSON schema directly, and will have Set/Set as desired and Reset buttons.

images/confluence/download/attachments/2111257442/dm_userGuide_features_jsonPropertyChange.png

Map properties

For table/map properties, you will have:

  • an Add button in order to add a new line, which you should then type manually,

  • a Remove button – to remove a particular line,

  • a Reset button – to remove all changes that have been made on this property and return to its old state, and

  • a Set/Set as desired button - to set the whole map.

images/confluence/download/attachments/2111257442/dm_userGuide_features_mapPropertyChange.png