ABB free@home

ABB Free@home

Eliona App for the ABB Free@home Integration

Simply smart. ABB-free@home® turns a house or apartment into a smart home. Whether it's blinds, lights, heating, air conditioning, door communication, or scenes. Easily remote-controlled via a switch on the wall, with a laptop, or with a smartphone. Very convenient. Extremely comfortable. Very energy-efficient. Particularly attractive: the costs are minimal compared to conventional electrical installations.

This app allows access to ABB Free@home systems directly in Eliona via the ABB ProService Portal. The user can monitor values, browse statistics, control the Free@home devices, and, most importantly, network ABB devices with systems from other manufacturers.

Installation

The ABB Free@home App is installed via the App Store in Eliona.

Assets

The ABB Free@home App independently creates all necessary assets and asset types.

Asset Structure

The following asset types are created only to create a structure in Eliona:

  • Floor: Represents a specific level in a building.

Attribute
Description

Id

Floor identifier

Name

Floor name

Level

Floor level

  • Room: Represents a specific room on a floor.

Attribute
Description

Id

Room identifier

Name

Room name

  • System: Represents a central system that controls multiple devices.

Attribute
Description
Filterable

ID

System ID

x

GAI

GAI

x

Name

System Name

x

  • Device: Represents a specific device in the system. Devices are linked to their respective systems and locations in the Eliona asset tree.

Attribute
Description
Filterable

ID

Device identifier

x

GAI

GAI

Name

Device name

x

Location

Device location

Channels

Channels are linked to devices. These channels provide the actual functionality:

  • Switch: A normal light switch.

Attribute
Description
Subtype

SwitchState

Switch state

Input

Switch

Switch

Output

  • Dimmer: A channel for controlling light intensity.

Attribute
Description
Subtype

SwitchState

Switch state

Input

DimmerState

Dimmer State

Input

Switch

Switch

Output

Dimmer

Dimmer

Output

  • HueActuator: A channel for controlling colored lighting.

Attribute
Description
Subtype

SwitchState

Switch state

Input

DimmerState

Dimmer state

Input

HSVState

HSV state

Input

ColorModeState

Color mode status

Input

ColorTemperatureState

Color temperature status

Input

Switch

Switch

Output

Dimmer

Dimmer

Output

HSVHue

HSV hue

Output

HSVSaturation

HSV saturation

Output

HSVValue

HSV value

Output

ColorTemperature

Color temperature

Output

  • RTC: Room temperature controller.

Attribute
Description
Subtype

SwitchState

Switch state

Input

CurrentTemp

Current temperature

Input

SetTempState

Set temperature state

Input

Switch

Switch

Output

SetTemp

Set temperature

Output

  • RadiatorThermostat: Thermostat for a radiator.

Attribute
Description
Subtype

SwitchState

Switch state

Input

CurrentTemp

Current temperature

Input

SetTempState

Set temperature state

Input

StatusIndication

Status indication

Input

HeatingActive

Heating active

Input

HeatingValue

Heating value

Input

Switch

Switch

Output

SetTemp

Set temperature

Output

  • HeatingActuator: Heating control unit.

Attribute
Description
Subtype

InfoFlow

Info Flow

Input

ActuatorFlow

Actuator Flow

Input

  • WindowSensor: Sensor for detecting window position.

Attribute
Description
Subtype

Position

Position

Input

  • DoorSensor: Sensor for detecting door position.

Attribute
Description
Subtype

Position

Position

Input

  • MovementSensor: Sensor for detecting movement.

Attribute
Description
Subtype

Movement

Movement

Input

  • Scene: Represents a scene.

Attribute
Description
Subtype

SwitchState

Switch state

Input

Configuration

You can find more information on app configuration ↗ here.

The ABB Free@home app is configured by defining one or more authentication credentials. The following data is required for each configuration:

Attribute
Description

abbConnectionType

Type of connection. Currently, only "ProService" is supported.

apiKey

API key provided by ABB

orgUUID

UUID of the ProService organization

enable

Flag to activate or deactivate the retrieval from this API

refreshInterval

Interval in seconds for device detection. This is an expensive operation and should not be less than 3600 s

requestTimeout

API query timeout in seconds

assetFilter

Filter for asset creation, more details can be found in the app's README

projectIDs

List of Eliona project IDs for which this device should collect data. For each project ID, all assets are automatically created in Eliona.

The configuration is done via a corresponding JSON structure. For example, the following JSON structure can be used to define an endpoint for app permissions:

{
  „abbConnectionType“: „ProService“,
  „apiKey“: „api.key“,
  „orgUUID“: „org-uuid“,
  „enable“: wahr,
  „refreshInterval“: 3600,
  „requestTimeout“: 120,
  „assetFilter“: [],
  „projectIDs“: [
    „10“
  ]
}

Configurations can be created with this structure in Eliona under Apps > ABB Free@home > Settings. To do this, select the endpoint /configs with the POST method.

After completing the configuration, the app starts the continuous asset creation. When all detected devices are created, the user is informed about it via Eliona's notification system.

After Configuration

After the application is configured, it searches for systems connected to the configured ProService account. On all of these systems, a user named "eliona_ProService" is automatically created, who is later used to control the devices. This account must be activated locally on these systems.

To activate the account, log in to the SysAPs, search for a user named "eliona_ProService" under "User settings." Activate this user and make sure that they have the correct access rights to control the devices.

Troubleshooting

Error Message "Defective Device"

Some devices have a bug that causes the system to classify the device as "defective" when it writes data points. The system then no longer sends data to these devices and makes them uncontrollable.

However, the devices are not defective; the sysAP only needs to be restarted and the devices will respond again.

ABB is aware of this error and is working on a way to fix it. If you repeatedly encounter this problem, please let us know so we can fix it.

Troubleshooting with GraphQL

ABB has a GraphQL playground for its Smart Home API: https://apim.eu.mybuildings.abb.com/adtg-api/v1/graphiql

You can log in to the playground with either your MyBuildings account or your ProService account.

{
  PSOrganization{dtId} # should not work for a normal user
}
{
  User{userName} # should return the username of the user who created the token
}

To check what relationship you have to the systems, you can use this query:

{
  UserDevice {dtId} #the dtId should appear here - in case the user is the owner of the sysap
  CustomerDevice {dtId} #the dtId should appear here - in case the user is the installer who invited the user as a customer
}

Please note that ABB currently does not recommend using the same user account for ProService and MyBuildings portals. This leads to some problems that can be circumvented but are not desirable.

Optimizing Requests

ABB has implemented a way to analyze resource usage by the current user:

{
  ServerDescriptionService
  {
    consumedRequestCosts # returns the sum of the costs caused by this user (should be reset to 0 at night)
    requestCosts # returns the costs for this query (in your case, mainly affected by 1 per loaded object + 1 per DataPointRequest)
  }

# ... add the rest/the normal query here
}

We have made great efforts to reduce resource consumption. Nevertheless, the app's querying for new devices is a very resource-intensive process that can be further optimized if there is a need for it.

Last updated