Dimmer RFXCOM Slider

I must be missing something really obvious but I can’t get a dimmer to work as I expect with RFXCOM.

My item:
Dimmer KitchenTableWindow { rfxcom">1.1:LIGHTING2.AC:DimmingLevel" }

In my sitemap:
Slider item=KitchenTable

When I press and hold up I can tail the log and see that it is sending INCREASE commands but nothing happens with the lamp. I tried to add a rule for it as well as I read somewhere that it was needed, I checked in the app “RFXmngr” that it was sending values between 0 and 15 so I’ve tried to send values from 0-15 and also 0-100 as below but no luck. This is the rule I’m using:

rule "Dim KitchenTable"
when
	Item KitchenTable received command
then

	var Number percent = 0
	if(KitchenTable.state instanceof DecimalType) percent = KitchenTable.state as DecimalType 
		
	if(receivedCommand==INCREASE) percent = percent + 5
	if(receivedCommand==DECREASE) percent = percent - 5

	if(percent<0)   percent = 0
	if(percent>100) percent = 100
	postUpdate(KitchenTable, percent);
end

The lamp is working and dimming correctly if i send it commands from RFXmngr.

Just noticed that it works correctly in the iPhone app where it’s rendered as a slider…

I assume the Iphone app does not send an INCREASE but a PercentType value?

Shouldn’t your percent variable also be of PercentType instead of a Number ?

You are correct, the iPhone app sends a value between 0 and 100 instead of INCREASE/DECREASE. That is also what I send with the percent variable. To be honest, when I noticed that it’s working in the app I don’t really care about the web gui. :smile:

Hi NIlzen, not sure your problem is solved in case of not there my config used with a coco AWMD-250

items:

Dimmer Light_GF_Plafonnier_Salon “Plafonnier Salon [%d %%]” (GF_Living,GF_Salon,Lights,GF_Salon_Lights,gDashboard) { rfxcom=">4011074.3:LIGHTING2.AC:DimmingLevel" }

Rules:

rule "Dimmed Light"
when
Item Light_GF_Plafonnier_Salon received command
then
var Number percent = 0
var Number light_send = 0
if(Light_GF_Plafonnier_Salon.state instanceof DecimalType) light_send = Light_GF_Plafonnier_Salon.state as DecimalType
else light_send = 1
logInfo(“Plafonnier salon:”,Light_GF_Plafonnier_Salon.state)
if(receivedCommand==INCREASE) light_send = light_send + 1
if(receivedCommand==DECREASE) light_send = light_send - 1
if(light_send<=0) light_send = 0
if(light_send>0 && light_send<8) light_send = 1
if(light_send>7 && light_send<15) light_send = 2
if(light_send>14 && light_send<22) light_send = 3
if(light_send>21 && light_send<29) light_send = 4
if(light_send>28 && light_send<36) light_send = 5
if(light_send>35 && light_send<43) light_send = 6
if(light_send>42 && light_send<50) light_send = 7
if(light_send>49 && light_send<57) light_send = 8
if(light_send>56 && light_send<64) light_send = 9
if(light_send>63 && light_send<71) light_send = 10
if(light_send>70 && light_send<78) light_send = 11
if(light_send>77 && light_send<85) light_send = 12
if(light_send>84 && light_send<92) light_send = 13
if(light_send>91 && light_send<100) light_send = 14
if(light_send>=100) light_send = 15
sendCommand(Light_GF_Plafonnier_Salon, light_send);
end