This is the forum archive of Homey. For more information about Homey, visit the Official Homey website.

The Homey Community has been moved to https://community.athom.com.

This forum is now read-only for archive purposes.
Closed Official

[App] Fibaro by Athom (v1.5.18)

1568101131

Comments

  • @tweaqer ;
    I think you can only update modules if they are connected to the hc2.
    And it's not possible to remove a node from homey, add to the hc2, update, then re-add the node to homey, all from within homey.

    So i think it's very unlikely 
  • PeaoPeao Member
    I hope they'll update the Fibaro App today in the App-Store... I am having friends over this evening and my electric dooropener is powerd by a fibaro relay switch :smiley: . Would be nice to impress them.

  • any plans for support on the FGS222 v2.2 ?


  • PeaoPeao Member
    MarcoF said:
    any plans for support on the FGS222 v2.2 ?


    The FGS222 is included in the actual pull request sent by @caseda 3 days ago.

    Github title of the request:
    "Add support for FGS-211 (4 common id's), FGS-212, FGS-221 (3 common id's) and FGS-222"
  • Peao said:
    MarcoF said:
    any plans for support on the FGS222 v2.2 ?


    The FGS222 is included in the actual pull request sent by @caseda 3 days ago.

    Github title of the request:
    "Add support for FGS-211 (4 common id's), FGS-212, FGS-221 (3 common id's) and FGS-222"
    Great! didn't see that! :)
  • ReemsterReemster Member
    edited August 2016
    Is er iemand hier die flow kaarten kan toevoegen aan de Fibaro bewegingsmelder bij ...en... (...and...) zoals "beweging gezien" "geen beweging gezien"  enz..  Want doordat ik deze kaarten mis, zijn sommige flows omslachtig aan te maken. Snap dat het misschien geen prioriteit heeft, maar als het simpel te doen is? .. 
  • Reemster said:
    Is er iemand hier die flow kaarten kan toevoegen aan de Fibaro bewegingsmelder bij ...en... (...and...) zoals "beweging gezien" "geen beweging gezien"  enz..  Want doordat ik deze kaarten mis, zijn sommige flows omslachtig aan te maken. Snap dat het misschien geen prioriteit heeft, maar als het simpel te doen is? .. 
    ?  :)
  • @Reemster ;
    it will be better for that function to be included by default into the capability, otherwise for all "motion sensors" this will be needed to add, not just on the fibaro one.

    Dutch:
    Het zal beter zijn als deze functie standaard in de capabilities zit, anders zal dat moeten gebeuren voor alle beweging melders, niet alleen voor de fibaro melder
  • Just bought myself a FGS223, will it differ much from the FGS222, from code perspective? 
  • FGS-223? that does not exist, must be a typo from the webshop you bought it from.
  • caseda said:
    @Reemster ;
    it will be better for that function to be included by default into the capability, otherwise for all "motion sensors" this will be needed to add, not just on the fibaro one.

    Dutch:
    Het zal beter zijn als deze functie standaard in de capabilities zit, anders zal dat moeten gebeuren voor alle beweging melders, niet alleen voor de fibaro melder
    Oke
  • little update on the status of the app:

    Dimmer (2):
    there is missing something in the z-wave driver that stops me from adding the S2 button properly like it should for control with homey (for both the dimmer v1 and v2), so its a wait for that to be implemented.

    I did however add a "S2 Long pressed/double clicked" trigger card because that was easy to implement. (for the dimmer 2)

    Will look into more control for the Dimmer v1 tomorrow with S2, if it is even possible.

    FGR(M) Roller Shutter Modules:
    Because this thing that is missing, i'll also be banded in the same way in the controles (at least with the older type, FGR-211)
    But i think it will work out properly.

    I would, however, really love some more information about:
    FGR-211;
    FGR-221 or FGRM-222 (these 2 are almost the same)
    Maybe someone can help me with this, with sending the Node Info that is created in the chrome console, when you are including it, to me.
  • @nicor @kasteleman ;
    I was just about to say, that module has not been implemented in any other controller with an open source. but seems like its just been added.

    I will need a copy of the node info though (gets printed in the chrome console when adding it), can't find any info on the interwebs on what command classes it's using.
    But i do think its almost the same as the FGS-212 (the FGS-213) and FGS-222 (the FGS-223)
  • caseda said:
    little update on the status of the app:

    Dimmer (2):
    there is missing something in the z-wave driver that stops me from adding the S2 button properly like it should for control with homey (for both the dimmer v1 and v2), so its a wait for that to be implemented.

    I did however add a "S2 Long pressed/double clicked" trigger card because that was easy to implement. (for the dimmer 2)

    Will look into more control for the Dimmer v1 tomorrow with S2, if it is even possible.

    FGR(M) Roller Shutter Modules:
    Because this thing that is missing, i'll also be banded in the same way in the controles (at least with the older type, FGR-211)
    But i think it will work out properly.

    I would, however, really love some more information about:
    FGR-211;
    FGR-221 or FGRM-222 (these 2 are almost the same)
    Maybe someone can help me with this, with sending the Node Info that is created in the chrome console, when you are including it, to me.
    Does this help for the fgrm-222?

    	<Node id="24" name="" location="" basic="4" generic="17" specific="6" type="Motor Control Class B" listening="true" frequentListening="false" beaming="true" routing="true" max_baud_rate="40000" version="4" security="false" query_stage="Complete">
    		<Manufacturer id="010f" name="FIBARO System">
    			<Product type="0301" id="1001" name="FGRM222 Roller Shutter Controller 2" />
    		</Manufacturer>
    		<CommandClasses>
    			<CommandClass id="32" name="COMMAND_CLASS_BASIC" version="1" request_flags="4" mapping="38">
    				<Instance index="1" />
    				<Value type="byte" genre="all" instance="1" index="0" label="Basic" units="" read_only="false" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="255" value="0" />
    			</CommandClass>
    			<CommandClass id="37" name="COMMAND_CLASS_SWITCH_BINARY" version="1" request_flags="4">
    				<Instance index="1" />
    				<Value type="bool" genre="user" instance="1" index="0" label="Switch" units="" read_only="false" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="False" />
    			</CommandClass>
    			<CommandClass id="38" name="COMMAND_CLASS_SWITCH_MULTILEVEL" version="3">
    				<Instance index="1" />
    				<Value type="byte" genre="user" instance="1" index="0" label="Level" units="" read_only="false" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="255" value="99" />
    				<Value type="button" genre="user" instance="1" index="1" label="Open" units="" read_only="false" write_only="true" verify_changes="false" poll_intensity="0" min="0" max="0" />
    				<Value type="button" genre="user" instance="1" index="2" label="Close" units="" read_only="false" write_only="true" verify_changes="false" poll_intensity="0" min="0" max="0" />
    				<Value type="bool" genre="system" instance="1" index="3" label="Ignore Start Level" units="" read_only="false" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="True" />
    				<Value type="byte" genre="system" instance="1" index="4" label="Start Level" units="" read_only="false" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="255" value="0" />
    				<Value type="byte" genre="system" instance="1" index="5" label="Dimming Duration" units="" read_only="false" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="255" value="255" />
    				<Value type="byte" genre="user" instance="1" index="6" label="Step Size" units="" read_only="false" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="255" value="0" />
    				<Value type="button" genre="user" instance="1" index="7" label="Inc" units="" read_only="false" write_only="true" verify_changes="false" poll_intensity="0" min="0" max="0" />
    				<Value type="button" genre="user" instance="1" index="8" label="Dec" units="" read_only="false" write_only="true" verify_changes="false" poll_intensity="0" min="0" max="0" />
    			</CommandClass>
    			<CommandClass id="43" name="COMMAND_CLASS_SCENE_ACTIVATION" version="1" request_flags="4" after_mark="true">
    				<Instance index="1" />
    			</CommandClass>
    			<CommandClass id="49" name="COMMAND_CLASS_SENSOR_MULTILEVEL" version="2">
    				<Instance index="1" />
    				<Value type="decimal" genre="user" instance="1" index="4" label="Power" units="W" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="0.0" />
    			</CommandClass>
    			<CommandClass id="50" name="COMMAND_CLASS_METER" version="2" request_flags="2">
    				<Instance index="1" />
    				<Value type="decimal" genre="user" instance="1" index="0" label="Energy" units="kWh" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="0.41" />
    				<Value type="decimal" genre="user" instance="1" index="8" label="Power" units="W" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="0.0" />
    				<Value type="bool" genre="user" instance="1" index="32" label="Exporting" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="False" />
    				<Value type="button" genre="system" instance="1" index="33" label="Reset" units="" read_only="false" write_only="true" verify_changes="false" poll_intensity="0" min="0" max="0" />
    			</CommandClass>
    			<CommandClass id="112" name="COMMAND_CLASS_CONFIGURATION" version="1" />
    			<CommandClass id="114" name="COMMAND_CLASS_MANUFACTURER_SPECIFIC" version="1" request_flags="4">
    				<Instance index="1" />
    			</CommandClass>
    			<CommandClass id="115" name="COMMAND_CLASS_POWERLEVEL" version="1" request_flags="4">
    				<Instance index="1" />
    				<Value type="list" genre="system" instance="1" index="0" label="Powerlevel" units="dB" read_only="false" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" vindex="0" size="1">
    					<Item label="Normal" value="0" />
    					<Item label="-1dB" value="1" />
    					<Item label="-2dB" value="2" />
    					<Item label="-3dB" value="3" />
    					<Item label="-4dB" value="4" />
    					<Item label="-5dB" value="5" />
    					<Item label="-6dB" value="6" />
    					<Item label="-7dB" value="7" />
    					<Item label="-8dB" value="8" />
    					<Item label="-9dB" value="9" />
    				</Value>
    				<Value type="byte" genre="system" instance="1" index="1" label="Timeout" units="seconds" read_only="false" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="255" value="0" />
    				<Value type="button" genre="system" instance="1" index="2" label="Set Powerlevel" units="" read_only="false" write_only="true" verify_changes="false" poll_intensity="0" min="0" max="0" />
    				<Value type="byte" genre="system" instance="1" index="3" label="Test Node" units="" read_only="false" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="255" value="0" />
    				<Value type="list" genre="system" instance="1" index="4" label="Test Powerlevel" units="dB" read_only="false" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" vindex="0" size="1">
    					<Item label="Normal" value="0" />
    					<Item label="-1dB" value="1" />
    					<Item label="-2dB" value="2" />
    					<Item label="-3dB" value="3" />
    					<Item label="-4dB" value="4" />
    					<Item label="-5dB" value="5" />
    					<Item label="-6dB" value="6" />
    					<Item label="-7dB" value="7" />
    					<Item label="-8dB" value="8" />
    					<Item label="-9dB" value="9" />
    				</Value>
    				<Value type="short" genre="system" instance="1" index="5" label="Frame Count" units="" read_only="false" write_only="false" verify_changes="false" poll_intensity="0" min="-32768" max="32767" value="0" />
    				<Value type="button" genre="system" instance="1" index="6" label="Test" units="" read_only="false" write_only="true" verify_changes="false" poll_intensity="0" min="0" max="0" />
    				<Value type="button" genre="system" instance="1" index="7" label="Report" units="" read_only="false" write_only="true" verify_changes="false" poll_intensity="0" min="0" max="0" />
    				<Value type="list" genre="system" instance="1" index="8" label="Test Status" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" vindex="0" size="1">
    					<Item label="Failed" value="0" />
    					<Item label="Success" value="1" />
    					<Item label="In Progress" value="2" />
    				</Value>
    				<Value type="short" genre="system" instance="1" index="9" label="Acked Frames" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="-32768" max="32767" value="0" />
    			</CommandClass>
    			<CommandClass id="117" name="COMMAND_CLASS_PROTECTION" version="1" request_flags="4">
    				<Instance index="1" />
    				<Value type="list" genre="system" instance="1" index="0" label="Protection" units="" read_only="false" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" vindex="0" size="1">
    					<Item label="Unprotected" value="0" />
    					<Item label="Protection by Sequence" value="1" />
    					<Item label="No Operation Possible" value="2" />
    				</Value>
    			</CommandClass>
    			<CommandClass id="133" name="COMMAND_CLASS_ASSOCIATION" version="1" request_flags="4">
    				<Instance index="1" />
    				<Associations num_groups="3">
    					<Group index="1" max_associations="16" label="Group 1" auto="false" />
    					<Group index="2" max_associations="16" label="Group 2" auto="false" />
    					<Group index="3" max_associations="1" label="Send updates" auto="true">
    						<Node id="1" />
    					</Group>
    				</Associations>
    			</CommandClass>
    			<CommandClass id="134" name="COMMAND_CLASS_VERSION" version="1" request_flags="4">
    				<Instance index="1" />
    				<Value type="string" genre="system" instance="1" index="0" label="Library Version" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="3" />
    				<Value type="string" genre="system" instance="1" index="1" label="Protocol Version" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="3.52" />
    				<Value type="string" genre="system" instance="1" index="2" label="Application Version" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="0" max="0" value="22.22" />
    			</CommandClass>
    		</CommandClasses>
    	</Node>
    



  • @Fire69 ;
    i know what the command classes are, and what they do.
    but i need to know how homey sees them (that's why i'm asking for the node info that homey gives)

    there are certain things that are not being specified in the XML's of all the other controllers, because they work different then homey (especially when talking about different endpoints).

    I found one that came pretty close (the one openHAB uses) but it's still missing things (or rather, homey is sometimes missing things)

    thanks for the effort though :smile: 
  • Hm, too bad.
    Don't really want to remove it from my current controller and add it to Homey.  It's not working stable enough for me (and neither is my other controller so I don't want to touch it while the module is working OK  :| )
  • Bought the FGS-222, installed the App Version from @caseda (modified the name to Fibaro 2 in App.json so it can exist next to the Athom Version of Fibaro). Works like a charm. Can switch both switches. Nice job!
  • @thayoung1 ;
    I also have a FGS-222 module and its "not" working OK. 
    OK is possible to switch the endpoints, but because the device shows up as 3 "deviceCards/endpoints". 
    Its not really clear why there are 3 "switches" and also the switches are not working propperly because switch 1&2 are both switching relay1 and these switches don't sync.
    So when I flip the "on/off" switch of endpoint 1, then I would expect switch 2 to flip "on" because endpoint 1 is activated.

    Do you see the same behavior?
  • @MarcoF I have the same experience as you describe. But it is working 'good enough' for me, not perfect. I can switch both relais from the App and with the wall switches and can base flows on it.

    It's like speech or my FGMS001; works, but not perfect.
  • @thayoung1 ;
    yeah it works :) 
  • casedacaseda Member
    edited August 2016
    @MarcoF, @RobinVanKekem ;;
    no, no, and no.
    first things first, the main controller (the one with the full name) is relais 1, the one with the name "relais 1" is relais 1 as well but does not get reported to, so if you want to use the relais 1 in [IF]/[AND] flows, use the main device.
    relais 2 = only relais 2 so u can use that however you want, i have posted this in the main initiation here in the forum (this post)

    the reason for this is, i quote emile: (linky to quote)
    This is more an issue for https://github.com/athombv/node-homey-zwavedriver, as Homey seems to implement the Z-Wave protocol correctly.
    I agree that the mapping of a 'main' device to endnode 1 is counter-intuitive, but it's the 'Z-Wave way of things'

    So i can't do much about this.

    I was going to write an issue about it on the z-wave driver, cause it's got to change (not done yet, will do today), but until there is any update to that, you will need to use the device like it is written now:

    Main device = Relais  1/Node 1 (all flow)
    Relais 1 = Relais 1/Node 1 (only [THEN] trigger)
    Relais 2 = Relais 2/Node 2 (all flow)

    PS: i know you can say "then just remove Relais 1's device" but that makes it more confusing, or the main device will get a really really long name. (people don't read that's why i don't put it in the README file, but i think i should do it anyway for future reference).
  • no no no?
    What you say about the Switch 1,2,3 and endpoint 1,2 is "exactly" the same is I wrote here before and issued on Git.
    The issue on Git had a confusing title, but closing it......
    Still not getting it that it is being "accepted" at Athom " "because its the way zwave does it" ".

    My Vera handles it terrific (each endpoint its own Device and Device1 is the Main/Config device), Fibaro also only creates 2 devices for 2 endpoints.

    Other big controllers solved it..... 
  • casedacaseda Member
    edited August 2016
    @MarcoF
    we have it the same way? there are 3 "devices", device 1 (the full name) is the main controller/config device, even though it has ALSO the capabilities of relais 1 at the moment.., device 2 (Relais 1) for endpoint 1, and device 3 (Relais 2) for endpoint 2... i don't see your difference to other controllers..

    edit: sorry read your answer wrong... my bad
    I've already told you this in my previous but here the big explanation why i haven't chosen to just get rid of the "relay 1" device.
    1. it is LESS confusing results then having a name like:
    Fibaro Double Relay (FGS-222) Main device/Relais 1

    this is also confusing because it will show this way in the device add popup, because people can think, does it only support relay 1? what is up, i dont see any relais 2... (hey some people are "dumb" like that)

    2. even if i only state the name "Fibaro Double Relay (FGS-222)" people don't know that's relay 1, it's got a switch, but what does it switch... you know, but there will be people that Do Not Know
    people hate reading, so even adding this to the readme file... people will complain.

    3. i already wanted to give an idea that uses this concept, but it will need a change in the devices add module... not just the z-wave driver one.
  • MarcoFMarcoF Member
    edited August 2016
    I know what you said...... And the only thing I say is, that the current "solution" is (gently said) a good solution.
    I also say that other big controllers have this problem solved in a good way.

    Also saw your last Issue on Git and I think that suggested solution is only walking around the really issue.

    Fact is that the current situation isn't working, it needs to be changed and 3 devices with switches for 2 endpoints is a problem. Also if I have 10 FGS-222's in my house, then I creates 30 devices, where it can be done with 20 devices.

    Why not describe how a multi-endpoint device should be added?
    {
      "zwave": [
        {
          "name": "FGS-222",
          "label": {
            "en": "Main device",
            "nl": "Hoofd apparaat"
          },
          "children": [
            {
              "name": "FGS-222 e1",
              "label": {
                "en": "Relay 1",
                "nl": "Relais 1"
              }
            },
            {
              "name": "FGS-222 e2",
              "label": {
                "en": "Relay 2",
                "nl": "Relais 2"
              }
            }
          ]
        }
      ]
    } 

  • @MarcoF ;
    "walking around the real issue" the option i give in git wil give the possibility to what the other controllers also do... 2 devices where you will get 1 device for main and relay 1, and 1 device for relay 2... (do you really even know how other controllers do it? or just the basics..) but will still have one proper name in the "add device" popup

    i am wondering though, do you even know how the drivers work in homey? it seems like you don't, if you offer a solution to how it is already been done inside the driver. except you say "childeren" where the driver uses "MultiChannelNode" because that is what it's called.
  • MarcoFMarcoF Member
    edited August 2016
    I just read your issue another few times.
    Again we are both trying to solve this issue for Athom, but me feeling it that the already have a solution and solve it there way.:)

    If I know how the drivers in Homey work? Yes and(!) no(!), I'm fortunate with the fact I'm not knowing everything. 
    Does it really matter how the "children/endnodes/endpoints/nodes/subnodes/modules/submodules" in my example are called? I just copied a piece of code from the app.json Settings section I'm currently working on.

    Also its not Athom inventing Z-Wave, Athom is adding an abstract layer between Z-Wave <> Homey and extend it with apps.
    Could work great, but in the end it needs to be workable for the end user (and it took me 5-10 minutes to find out what in ******** was going on with the 3 switches and the 2 relays). And in cases as this, its a bit odd to reinvent the wheel, where other Z-Wave controller have solved this "issue" already very well. In big lines; "just" ditch the switch on the main device and create 2 deviceCard corresponding to the 2 relay endpoints. Add a big marker to the main device which indicates its a main/config device and its done. Next filter the Main/Config device from the Mobile app and your done. Maybe its even an idea to move to Main/Config device to a dedicated Zone so user are not bothered with this "device".

    [edit]
    one last question to you as experienced Z-Wave app developer;
    Could you help my on Slack with my Philio App which has some troubles getting Tamper work in Realtime.
    [/edit]

    I'm done with this issue/discussion, please back to Fibaro stuff :)
  • PeaoPeao Member
    MarcoF said:

    I'm done with this issue/discussion, please back to Fibaro stuff :)
    Your wish is my command  :D

    It's been over a week now since @caseda pushed the updated code and no update in the appstore yet :(

    (I downloaded it from github though, but i can't get my 222 relay paired. I guess it is still paired to my pre 0.9.x Homey and I couldn't get it removed from it... hopefully the "official" update works)

This discussion has been closed.