Seperate the input from output - Fibaro Smart Implant

It is al in the explanation, and the solved message, just compare the 2 values, and see the 1 value difference, the second to last value.

This is only like a box with written on it “must go to the 6th floor”, and not the message inside (the rest of the values) to change the connection between the input and output.

Sorry, I’m trying, but the second to last values both seem to read 0x00 for input 2.

1st:: 0x01 0x00 0x00
2nd: 0x00 0x02 0x00
These are the last 3 values of both. (yes 0x00 is 1 value)
See the bold text for the difference :wink:.

Just to be really sure,
first says “0x00” (hexadecimal) which means “0” (in decimal),
second has “0x02” (hexadecimal) which means “2” (in decimal).

OK thanks, I do understand hexadecimal, I used to program microprocessors, although I admit I have forgotten a lot in my senior years. But the values you have referenced seem to me to refer to the values for input 1, not input 2. Unless my assumption re input 2 is wrong. I am assuming that to change the behaviour of of input 2 you use Node Id, 0x60, 0x0D, 0x00, 0x06 to both connect and disconnect, therefore if Node Id, 0x60, 0x0D, 0x00, 0x06 is used to separate the input from the output then one of the parameters would be different to connect them back together.

Thanks for your patience.
Peter

You send the same on and off value to the device (the last 4 values), just the “address/floor” is different where the value should be delivered.

Let me explain it like this:

The Smart implant sensor is a building with 7 floors.
Each floor has people with their own purpose.
On the main floor there is a front desk where we (Homey) can deliver off messages (for the device to do).

We send a message, which is (the last) 4 values:
0x75, 0x01, 0x02, 0x00 (to seperate)
0x75, 0x01, 0x00, 0x00 (to connect)
(Notice that the message is the same, for both in/output 1 and in/output 2)
that we want to separate (or connect) input from the output (which is the 3th and 4th value).
This is directed towards the “Protection” people (the 1st value) that they need to “Change” (the 2nd value) the current behaviour of the input and output (3th and 4th value).

The front desk wil bring this message, to the first floor where it finds “Protection” people (cause why bother to go further then necessary).
Which is floor 5, where the “Protection” people of input and output 1 reside.
And that floor’s people will act on what the messages tells them to do (separate or connect the input from the output)

But we want to separate in/output 2 (too).
So we make sure the right floor gets the message.
To do this we put this same message in a box:
0x60, 0x0D, 0x00 (this means we’ve put it in a box)
and write on this box that the message inside needs to go to the:
6th floor (which is the 4th value, 0x06)
where the “Protection” people of input and output 2 reside.
And bring this box to the Front desk.
The front desk reads that is needs to bring the message inside the box to the 6th floor and so does this.
At the 6th floor, it opens the box, and gives the message inside (which is still the same message):
0x75, 0x01, 0x02, 0x00 (to seperate)
0x75, 0x01, 0x00, 0x00 (to connect)
to the “Protection” people (1st value) to “Change” (2nd value) the behaviour of the input and output (3th and 4th value)

So you get this:
0x60, 0x0D, 0x00, 0x06, 0x75, 0x01, 0x02, 0x00
| ===== box ==== | floor | = message inside == |

8 Likes

Got it. What a great explanation. Thanks very much for the education. When I now look back on your documented solution, it all makes sense.

For the Smart Implant on the Fibaro support site it states to:

Change parameter 20 to 4
Change parameter 21 to 4

As per @Caseda 's excellent explanation Seperate the input from output - Fibaro Smart Implant.
Am I correct in adding these parameters to Homey’s raw value field;

Box| floor| data
0x60, 0x0D, 0x00,| 0x14,| 0x75, 0x01, 0x04, 0x00
0x06, 0x0D, 0x00, 0x15, 0x75, 0x01, 0x04, 0x00

Separating the output from the input isn’t done by parameters (/advanced settings), but a change in a certain command class (a part of z-wave).
So no, that isn’t how you change that certain setting, just follow the most expended solution if you want to separate.

Those 2 parameters do something else then separating the output(s) from the input(s) (they change the behaviour of the inputs) and are already shown in the advanced settings, so no need for using raw configuration parameters for that.

1 Like

Hi @Caseda ,

Thank you for the quick reply. It now works but not by changing the parameters like fibaro explains on their support website. In Homey it just takes a removal of the Smart Implant and a re-addition to Homey with the temperature sensors attached.

The temperature sensors aren’t even connected to the 2 inputs of the smart implant? the temperature sensors have their own wires to connect to.
So changing the inputs (to analog) wont do anything for the temperature sensors. (the temperature sensors aren’t even analog, it is a digital form of communication)

But yes they do need to be connected before you include them into any controller, that is a device limitation and is also mentioned in the manual.

Great topic exactly what I was looking for thank you for the explaination!

I used the fibaro smart implant together with a alphatronics schootcontact to see if my door is open or closed and I didnt want the out to become active this worked like a charm thank you.

Very useful, exactly what I needed!

Great work! Thanks! But it does not work on my newest Smart Implant. I’m able to seperate in/out 1, but not 2. I guess it has to do with Homey and S2 authentication because the only difference I can find is that when I added my newest implant Homey added it with S2 authentication (homey asked for a key/last 5 digits).

Yes, the device needs to be included unsecure for the commands to work, kinda weird that you made it work for in/out 1 as that (also) shouldn’t be possible with the device being included secure.

You can still include the smart implant unsecure by using a wrong code (IE: 00000) during pairing.

Have updated the original solution with this added information too.

1 Like

Hello! I send this 2 raw commands to separate s1 and s2 channels. When I click on switch it now not enable light, but when I click on switch in Homey its enable light. But how I can give an action to physical switch button using flows?

And also will this works for Fibaro Double Switch 2?

You don’t need a flow for switching the light on/off with physical switch which is connected to the Smart Implant.
Did you connected the physical switch in the right manner?

In addition you have to change parameter 20 and/or 21 like it’s shown in the screenshot. It depends on if you have a monostable (button) or a bistable switch.

For the Fibaro DS 2 you also don’t need a flow to switch the light on/off.

hey this helped me alot but now my implants are acting up!

Implant 1 - i separated in1 and out1 and it worked fine at my desk (work desk)
then i moved it 2meter an installed it to my garage motor with the same power i used at my
desk, worked fine then… the day after it wold not transmit inputs to homey, in2 still triggers out2
so my garage door opens but it wont send it to homey. (in1 & in2)
i can change out2 but not out1…

Implant 2 - i separated both! and it worked fine at my desk (work desk) wen i tested it ect.
the day after i installed it to my water guard with a different 24Vdc power.
Started testing it an it wont transmit change on in1 & in2 to homey.
i can change out1 but not out2…

someone help! :smiling_face_with_tear:

i need to see changes on the inputs and it would be nice to be able to change both outputs…
one implant is 4meter from the homey and the other is 16meter with 2 devices between.

This post has helped me out a bit. Relais 2 works properly, also input 1&2 work fine.
The problem is output relais 1.
When i try to activate it i receive this error:

Error
Missing Capability Listener: onoff.output1

Wonder if someone knows how to fix it.

Got it…thank you…but, please, explain me, why i had to use for separating IN1 this:

Node-ID,0x75,0x1,0x2,0x0

and for IN2 this:

Node-ID,0x60,0x0D,0x00,0x06,0x75,0x01,0x02,0x00

i mean… short vs long?