Fibaro Smart Implant

I should add that I only see child devices for the outputs, none for the inputs. I see no info from the inputs. I must be missing something.

@greg4

I'm assuming that your messages were meant for me? Sorry, I completely missed these.

I actually haven't had time to fully experiment with my Smart Implants or the drivers, beyond some very brief testing a few weeks ago. I did notice, as you did, that the driver that's available doesn't actually provide any way to control the outputs. I also may have been mistaken when I said that I could detect the state of the 2 inputs. I've just tried this again on my bench test setup, and I'm not actually seeing the states change. I don't know if I did something differently back then, or if I imagined just it! I may have just been seeing the states of the outputs. (BTW, have you experimented with the various parameters, especially 20-21 and 40-41?)

Given the shortcomings of the existing driver, I actually decided to just write a new one myself. I had gotten started, but then too many other things have gotten in the way, and I haven't had a chance to do much with it.

I'll definitely let you know if/when I manage to finish my own driver. This would be my first time writing a driver for Hubitat, so my progress is a little slower than it might be for others :slight_smile:

2 Likes

Thanks for the reply @jason-lane. Sorry, I should have tagged you. No worries though.

So I'm my testing I can concur what you've noted in that I do not see any state changes for the inputs and there is no control over the outputs. I have not played with the other parameters, though I think there are some interesting opportunities here. When it didn't work at all I didn't have the time to fuss with it so I just packed it away and used a MIMOLite and a MIMO2+ to accomplish my goals. (Too many goals and not enough time.). Would have loved to use the implant, so impossibly small and capable. I'm going to have to find another use for it.

I look forward to seeing the driver you work out. Thanks for making the effort and again for the reply.

1 Like

I installed a smart implant into a PC case and wired the outputs in parallel to the front panel POWER and RESET switches. The only function I observed was that manipulation of the on – off control on the individual child device page would change the state of the output relay. The AUTO OFF function did nothing for me. I was able to get the implant to function as intended by creating a virtual switch on Hubitat and a routine in rule machine. I will next explore creating a way to detect the ON-OFF state of the PC by using the binary connection method for intput and a SSR wired to a Molex connector as the trigger. I am a complete noob with Hubitat and home automation and anxious to continue my learning curve as I figure out how to display this in a dashboard.

@t_rosik What does your rule look like to then control the fibaro device?

I updated the driver from "boblehest" mentioned above with periodic reports, analog and digital inputs, event notifications, etc and made it available here:

https://github.com/muchu999/Hubitat/tree/master/Fibaro%20FBGS-222%20Smart%20Implant

This driver is relatively generic and hopefully it will help others get started with using this device. Because of the lack of documentation on some features, I wasted quite a bit of time (a lot) making it work, especially the periodic reports.

I made another personal version for my own project where I used the smart implant with some relays and other parts to replace a Venmar HRV Altitude Wall Control.

Some specifics:

  • [update: To clarify the install, install the 5 files as 5 drivers. Use the main driver file "...smart implant" for the device "type" of the device. This main driver will take care of using the other drivers as required (it will create child devices automatically).]
  • Periodic reports only work when multiChannelAssociation is set in a very specific way. Nothing you should worry about unless you plan on changing the code...
  • [updated, see next post] Outputs are individually linked to the digital inputs unless the inputs are set to be analog. Once the input has acted upon its corresponding output, it is always possible to set it back to whatever you want using the switch commands.
  • I didn't test the external temperature sensors functionality because I don't have any [update, user @tinker3433 said it was working fine with 3 external sensors]
  • The on-board temperature sensor always report high because it is heated by the device.
  • I didn't test much the scenes and buttons modes
  • [updated: solved, commands have been removed from the parent] Some of the commands in the parent device are there just so they work for the children, use the commands in the children devices for setting outputs and refresh
  • Don't forget to "save preferences" and then press the "configure" button when changing parameters. Sending all the parameters to the implant over RF takes about 1 minute after "configure" is pressed.
2 Likes

Reading the documentation it struck me that the output can actually be decoupled from the input using the protection command class. Enabling local protection (local protection value=2) stops the output from being controlled by the input while still allowing zwave RF commands to go through (RF protection value=0).

[update 1: There seem to be a bug in the implant firmware, the solution above works for input1/output1 but not for input2/output2]
[update 2: problem solved, Now works individually for both in/out pairs]

I updated the driver I uploaded in my previous post to allow the protection to be changed from the preferences.

It turns out this device is not too bad if you know how to make it work, too bad the documentation is not better.

2 Likes

Thanks @christi999 for the driver. I'm new in the hubitat world and exploring all possibilities.
Bought also recently the smart implant, as its a very powerful device, but works only with the Fibaro hub.

The main idea was to use it as gate opener.
Would your "Fibaro FBGS-222 Child Switch.groovy" somehow work with the output?

Appreciate your help !

To be clear, when you install the driver for the device you have to install all the files... The way the implant is wired/configured above, pushing the button directly activates the output for the gate controller, without driver intervention (except for the initial configuration). This is because by default, the inputs are linked directly to the outputs inside the device,

As for the driver, yes, the implant outputs are mapped to two instances of the "switch" child device and you can activate/deactivate them individually from the hub. in the child devices interface.

I got it working fine for my application with HE, the only thing bothering me is the firmware updates don't seem to be available unless you have a Fibaro hub (from what I read about people complaining about it)

All your metadata combined in one driver, or each as single driver? (as afterwards you can link only one driver to a device)

with the first driver ( Fibaro FBGS-222 Smart Implant.groovy) I have anyway issues:
"unable to resolve class hubitat.zwave.commands.notificationv8.NotificationReport @ line 448, column 24. unable to resolve class hubitat.zwave.commands.notificationv8.NotificationReport @ line 479, column 24."

The driver has one main file for the parent device and that parent device will create child devices (using the other files) to match the endpoints of the smart implant, 2 child switch/output, 2 analog inputs, 2 digital inputs, 1 internal temperature sensor child and up to 6 external temperature sensor child. Some info here:

https://community.hubitat.com/t/composite-devices-parent-child-devices/1925

As for the errors, I am no expert as I only had that hub for a few months but if the hub cannot resolve those classes, could it be that it is not running the latest version?

thanks for detailed the explanation.

For the error I have no clue... need to search. You were right.... hubitat update helped :slight_smile:
thanks a lot.

ps. @christi999 output ON/OFF works. But auto-off seems to have an issue. I set it to 1 or 2 and nothing. So to close the gate I have to manually turn off and on again.

Not too sure how your setup is suppose to work and what the gate controller expects??? Did you set the logic of operation correctly (contact normally open or closed)?

Auto off seems to work for me, I have a relay connected to the output and hear it click, I also see it in the debug log. I set the auto off to 20 (2 seconds). The relay goes on, then off after 2 seconds. Works for input configured in alarm or monostable button and directly from the child switch too.

My default = OPEN
ON = CLOSED
The gate controller is opening the gate after closing the OUTPUT 1.
If I want to close the gate, I have to open OUTPUT 1 and close it again, (so the controller is only performing actions by monostable close commands)

Regarding auto-off.
I simply set the auto-off parameter i.e. 20 and safe the preferences of the parent device.
Log isn't showing any auto-off either.

Did you also press "configure" which sends the configuration to the device? I also don't quite understand, You want the gate to open AND close with only one press of a button? p.s. Never mind, I guess you want to press once to open (and the contact will go closed-open) and then press again to close (and the contact will go closed-open again)

exactly :slight_smile:

Well then it should work, just make sure your parameters are set correctly, save your preferences and then configure, enable debug logging and look for error messages during configuration, maybe power off/on the device, Also, what firmware version are you running on the Fibaro , I have 5.1.

If all fails, maybe take a snapshot of your debug log and the device configuration page and post it here.

1 Like

Just rebooted hubitat, set again the auto-off, pressed configure. Finally it's working.

Great!