[SOLVED] Alexa integration and CurrentTemperature issue (Italian Skill)

alexa-openhab
Tags: #<Tag:0x00007f51f2ee8ce8>

(Andrea Riela) #1

Hi all,

I’m just playing with Alexa in Italian (today they published the Italian Skill).

In my Living Room I have a Netatmo module and a Danfoss Thermostat Valve. My items:

/* Groups */

Group gFF_LivingRoomThermostat "Radiatore" (gRadiators) [ "Thermostat" ]

/* Target Temperature */

//Number Alexa_LivingRoom_Radiator_CurrentTemperature "Temperatura attuale" (gLivingRoomThermostat) [ "CurrentTemperature" ]
Number Alexa_LivingRoom_Radiator_TargetTemperature "Temperatura" (gFF_LivingRoomThermostat) [ "TargetTemperature" ]

/* Current Temperatures */

Number Alexa_LivingRoom_Temperature "Temperatura [%.1f °C]" (gFF_LivingRoom) [ "CurrentTemperature" ]

Both items are linked to the right channel respectively via PaperUI.

I can set the temperature on my Thermostat without any issue. But when I ask (translated in english) “Alexa, tell me the temperature in living room” the answer is “There are more than one thermostat in the Living Room … ask me again adding the name of the device”

I’m stuck :frowning: What I’m missing?

thanks
Andrea


(CM6.5 H102) #2

Does it work if you remove the group association from the item?


(Andrea Riela) #3
/* Groups */

Group gFF_LivingRoomThermostat "Radiatore" [ "Thermostat" ]

/* Target Temperature */

//Number Alexa_LivingRoom_Radiator_CurrentTemperature "Temperatura attuale" (gLivingRoomThermostat) [ "CurrentTemperature" ]
Number Alexa_LivingRoom_Radiator_TargetTemperature "Temperatura" (gFF_LivingRoomThermostat) [ "TargetTemperature" ]

/* Current Temperatures */

Number Alexa_LivingRoom_Temperature "Temperatura [%.1f °C]" [ "CurrentTemperature" ]

Same issue


(CM6.5 H102) #4

Try

Number LivingRoomThermostat "Radiatore" [ "Thermostat" ]

@ariela EDIT
Your just wanting the room temp not the thermostat setting correct?
If so try removing the temp item from the group.

Number Alexa_LivingRoom_Temperature "Temperatura [%.1f °C]"  [ "CurrentTemperature" ]

(Andrea Riela) #5

What do you think if I “mask” somehow the current temperature via Netatmo as the current temperature was collected via thermostat?

I mean:

Number Alexa_LivingRoom_Temperature "Temperatura [%.1f °C]" (gLivingRoomThermostat) [ "CurrentTemperature" ]
Number Alexa_LivingRoom_Radiator_TargetTemperature "Temperatura" (gFF_LivingRoomThermostat) [ "TargetTemperature" ]

as

Alexa_LivingRoom_Temperature -> Netatmo
Alexa_LivingRoom_Radiator_TargetTemperature -> Danfoss


(Andrea Riela) #6

is what I did … nothing

On the other hand, change the group to number is not permitted (you need to have a group per thermostat)


(CM6.5 H102) #7

With a rule and a proxy item maybe?
Rough example:
Added Item:

Number Your_Proxy_Item "Temperatura [%.1f °C]" [ "CurrentTemperature" ]

Rule

rule "temp"
when
	Member of gFF_LivingRoomThermostat changed
then 
    Your_Proxy_Item.postUpdate(Alexa_LivingRoom_Temperature.state)
end

(Andrea Riela) #8

Solved!

I think is much easier if you create another item (like me) pointing to the same Netatmo channel, but assigned to the Thermostat group as “CurrentTemperature”.

:slight_smile:


(CM6.5 H102) #9

Good to hear,:smiley: and thanks for marking the topic solved.:+1:

If you would please post your working items file. It will be a good example for anyone else that stumbles across a similar issue.

Thanks


(Andrea Riela) #10

Should I post something in “Tutorials”?


(CM6.5 H102) #11

You can but please do a through search on the forum to make sure someone hasn’t already done so. Sometimes it can be very time consuming scrolling thru all the post looking for a solution, hence the,:+1: for adding [Solved] to the title, and I find most people look at the Tutorials section for large scale solutions. Simply posting what works is a good contribution but I’ll stop rambling now,:laughing: and leave the decision up to you.

Thanks

EDIT: If you decide to create a tutorial please provide a link in this topic or post your working solution here as well.


(Andrea Riela) #12

Title: The Power of Channels :slight_smile:

ISSUE

If you have two sensors reporting the Temperature in the same room (like in my case a Netatmo device and a Danfoss Thermostat valve), Alexa most likely won’t be able to answer the question “what’s the temperature in the room?” because for Alexa there are two thermostats and the situation is unclear.

SOLUTION

The idea is to consider what device for you is more reliable for “CurrentTemperature”. In my case Netatmo. So I’ve created a Thermostat group, with two items pointing in PaperUI to Danfoss setpoint channel for the target temperature and to Netatmo temperature for the current temperature.

/* Groups */

Group gFF_LivingRoom_Thermostat "Radiatore" (gRadiators) [ "Thermostat" ]

/* Target Temperature */

Number Alexa_LivingRoom_Radiator_TargetTemperature "Temperatura" (gFF_LivingRoom_Thermostat) [ "TargetTemperature" ]

/* Current Temperatures */

Number Alexa_LivingRoom_Temperature "Temperatura [%.1f °C]" (gFF_LivingRoom_Thermostat) [ "CurrentTemperature" ]

The “original” items in my case are the following

Number Netatmo_LivingRoom_Temperature "Temperature [%.1f °C]" (gFF_LivingRoom, gTemperature, gAVGTemperature, gFF_AVGTemperature, gChart, gHistory)
Number Danfoss_LivingRoom_Radiator_Temperature "Radiator Setpoint [%d]" (gFF_LivingRoom, gRadiators)

but creating two new items I’ve solved the “CurrentTemperature” issue, and also simplified how to to manage, like in my case, a main configuration in english and the “alexa part” with labels in my native language (italian).

Hope this helps
Andrea