snowdd1 / homebridge-knx

KNX platform shim for homebridge
https://github.com/nfarina/homebridge
GNU General Public License v2.0
97 stars 56 forks source link

KNXReadRequests seems to not work propertly #75

Closed vddgil closed 7 years ago

vddgil commented 7 years ago

Hello,

Here is my knx_config.json

The KNXReadRequests values are working for the first and the last device. Any idea why it's not working with the second and the third device ?

Thanks in advance !

{
    "knxd_ip": "192.168.1.55",
    "knxd_port": 6720,
    "AllowWebserver": false,
    "AllowKillHomebridge": false,
    "Devices": [
        {
            "DeviceName": "Plafonnier ",
            "Services": [
                {
                    "ServiceType": "Lightbulb",
                    "ServiceName": "Plafonnier bureau",
                    "Characteristics": [
                        {
                            "Type": "On",
                            "Set": [
                                "24/4/8"
                            ],
                            "Listen": [
                                "24/4/7"
                            ]
                        }
                    ],
                    "KNXReadRequests": [
                        "24/4/7"
                    ],
                    "subtype": "SUB_08ef28ba-1f3b-4cde-a735-297e49e0f8ef"
                }
            ],
            "UUID": "8cf72c4c-feb9-4cba-99f2-1152265cf532"
        },
        {
            "DeviceName": "Spots pourtour cuisine",
            "Services": [
                {
                    "ServiceType": "Lightbulb",
                    "ServiceName": "Spots pourtour cuisine",
                    "Characteristics": [
                        {
                            "Type": "On",
                            "Set": [
                                "24/4/24"
                            ],
                            "Listen": [
                                "24/4/25"
                            ]
                        }
                    ],
                    "KNXReadRequests": [
                        "24/4/25"
                    ],
                    "subtype": "SUB_38e7d7a2-9cea-4226-8233-17a3c82ae1d0"
                }
            ],
            "UUID": "665460e4-4a83-45c9-9569-b03c98e7abb2"
        },
        {
            "DeviceName": "Spots îlot cuisine",
            "Services": [
                {
                    "ServiceType": "Lightbulb",
                    "ServiceName": "Spots îlot cuisine",
                    "Characteristics": [
                        {
                            "Type": "On",
                            "Set": [
                                "24/4/23"
                            ],
                            "Listen": [
                                "24/4/22"
                            ]
                        }
                    ],
                    "KNXReadRequests": [
                        "24/4/22"
                    ],
                    "subtype": "SUB_0ea149d0-5fda-481b-b333-d30924c5e0ac"
                }
            ],
            "UUID": "27838da0-009b-4766-83a5-ae6bf0e87a4e"
        },
        {
            "DeviceName": "Spots",
            "Services": [
                {
                    "ServiceType": "Lightbulb",
                    "ServiceName": "Spots salon",
                    "Characteristics": [
                        {
                            "Type": "On",
                            "Set": [
                                "24/4/2"
                            ],
                            "Listen": [
                                "24/4/0"
                            ]
                        },
                        {
                            "Type": "Brightness",
                            "Set": [
                                "2/4/67"
                            ],
                            "Listen": [
                                "24/4/84"
                            ]
                        }
                    ],
                    "KNXReadRequests": [
                        "24/4/0"
                    ],
                    "subtype": "SUB_7ce88281-1745-42d7-9e6e-fc58b3a0f622"
                }
            ],
            "UUID": "7f683d48-ec43-4207-b956-3632a2e5732a"
        }
    ],
    "GroupAddresses": []
}
snowdd1 commented 7 years ago

Have you turned the READ flag to on in ETS for those addresses? And does the actuator support reading the status objects?

vddgil commented 7 years ago

I didn't configured my installation with ETS. It's an Hager installation and they have a tools called Easy Link to configure a KNX installation.

But, I assume that if it's working with my first light, It should work with the others no ?

Also, I have an hager domovea server that is corretly updated when starting so I assume the read flags are all set.

Thanks !

vddgil commented 7 years ago

FYI, I tried to add a log on line 148 in knxmonitor.js and only two adresses are printed ... And 24/4/0 is printed first

Maybe you can tell me where I can add a log to debug more precisely

snowdd1 commented 7 years ago

Hi Gil,
though something strange seems to happen, which I do not understand yet, I should clarify the difference between Listen and KNXReadRequests in knx_config.json

Listen will bind the characteristic to any incoming message (telegram) on the given group addresses
KNXReadRequests will send a READ telegram to the given addresses when homebridge-knx starts (so, only once).

You've put a debug statement into the registering routine, which should do the binding of the characteristic to the group addresses (i.e. Listen keyword). That should print all Listen addresses you've specified in the file, and I am not sure why it doesn't.

Can you upload the complete start log (console output)? I would like to have a look at it this evening. Thanks Raoul

vddgil commented 7 years ago

Hello,

Here is my complete start log:

[1/10/2017, 9:04:00 AM] Loaded plugin: homebridge-daylight
[1/10/2017, 9:04:00 AM] Registering accessory 'homebridge-daylight.Daylight'
[1/10/2017, 9:04:00 AM] ---
[1/10/2017, 9:04:00 AM] Loaded plugin: homebridge-knx
homebridge API version: 2.1
[1/10/2017, 9:04:00 AM] Registering platform 'homebridge-knx.KNX'
[1/10/2017, 9:04:00 AM] ---
[1/10/2017, 9:04:01 AM] Loaded plugin: homebridge-nest
[1/10/2017, 9:04:01 AM] Registering platform 'homebridge-nest.Nest'
[1/10/2017, 9:04:01 AM] ---
[1/10/2017, 9:04:01 AM] Loaded plugin: homebridge-suncalc
[1/10/2017, 9:04:01 AM] Registering accessory 'homebridge-suncalc.Suncalc'
[1/10/2017, 9:04:01 AM] ---
[1/10/2017, 9:04:01 AM] Loaded plugin: homebridge-weather
[1/10/2017, 9:04:01 AM] Registering accessory 'homebridge-weather.Weather'
[1/10/2017, 9:04:01 AM] ---
[1/10/2017, 9:04:01 AM] Loaded config.json with 0 accessories and 1 platforms.
[1/10/2017, 9:04:01 AM] ---
[1/10/2017, 9:04:01 AM] Loading 1 platforms...
[1/10/2017, 9:04:01 AM] Initializing Nest platform...
[1/10/2017, 9:04:01 AM] Fetching Nest devices.
Load homebridge-knx.KNX
---
>>> knxd groupsocketlisten starting <<<
Plugin - Configure Accessory: Plafonnier --> Added to restoredAccessories[]
Plugin - Configure Accessory: Spots --> Added to restoredAccessories[]
Plugin - Configure Accessory: Spots pourtour cuisine --> Added to restoredAccessories[]
Plugin - Configure Accessory: Spots îlot cuisine --> Added to restoredAccessories[]
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] homebridge event didFinishLaunching
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] Configuration starts
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] Reading from config: Device/Accessory 1 of 4
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] Service constructor called
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] ServiceType defined
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] ServiceType known as function
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] Found restored service: Plafonnier bureau
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] Preparing Characteristics: 1
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] On
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] Adding characteristic...
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] CharacteristicKNX.Constructor
---iterating--------------------
Type: On
Set.0: 24/4/8
Listen.0: 24/4/7
================================
INFO registerSingleGA 24/4/7
==========+> Read request:24/4/7
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] Done with [Plafonnier ] accessory
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] Reading from config: Device/Accessory 2 of 4
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] Service constructor called
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] ServiceType defined
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] ServiceType known as function
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] Found restored service: Spots pourtour cuisine
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] Preparing Characteristics: 1
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] On
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] Adding characteristic...
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] CharacteristicKNX.Constructor
---iterating--------------------
Type: On
Set.0: 24/4/24
Listen.0: 24/4/25
================================
INFO registerSingleGA 24/4/25
==========+> Read request:24/4/25
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] Done with [Spots pourtour cuisine] accessory
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] Reading from config: Device/Accessory 3 of 4
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] Service constructor called
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] ServiceType defined
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] ServiceType known as function
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] Found restored service: Spots îlot cuisine
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] Preparing Characteristics: 1
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] On
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] Adding characteristic...
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] CharacteristicKNX.Constructor
---iterating--------------------
Type: On
Set.0: 24/4/23
Listen.0: 24/4/22
================================
INFO registerSingleGA 24/4/22
==========+> Read request:24/4/22
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] Done with [Spots îlot cuisine] accessory
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] Reading from config: Device/Accessory 4 of 4
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] Service constructor called
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] ServiceType defined
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] ServiceType known as function
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] Found restored service: Spots salon
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] Preparing Characteristics: 2
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] On
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] Adding characteristic...
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] CharacteristicKNX.Constructor
---iterating--------------------
Type: On
Set.0: 24/4/2
Listen.0: 24/4/0
================================
INFO registerSingleGA 24/4/0
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] Brightness
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] Adding characteristic...
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] CharacteristicKNX.Constructor
---iterating--------------------
Type: Brightness
Set.0: 2/4/67
Listen.0: 24/4/84
================================
INFO registerSingleGA 24/4/84
==========+> Read request:24/4/0
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] Done with [Spots] accessory
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] We have read 4 devices from file.
[1/10/2017, 9:04:01 AM] [homebridge-knx.KNX] Saving config file!
---
Dest:24/4/7 Val: 1
Dest:24/4/0 Val: 0
[1/10/2017, 9:04:03 AM] Software version for Salle De Bains Thermostat is: 5.6-7
[1/10/2017, 9:04:03 AM] Current temperature for Salle De Bains Thermostat is: 20.5 C
[1/10/2017, 9:04:03 AM] Current heating for Salle De Bains Thermostat is: Heating
[1/10/2017, 9:04:03 AM] Current humidity for Salle De Bains Thermostat is: 45%
[1/10/2017, 9:04:03 AM] Target temperature for Salle De Bains Thermostat is: 22 C
[1/10/2017, 9:04:03 AM] Target heating for Salle De Bains Thermostat is: Heating
[1/10/2017, 9:04:03 AM] Away for Salle De Bains Thermostat is: 1
[1/10/2017, 9:04:03 AM] Software version for Dining Room Thermostat is: 5.6-7
[1/10/2017, 9:04:03 AM] Current temperature for Dining Room Thermostat is: 21 C
[1/10/2017, 9:04:03 AM] Current heating for Dining Room Thermostat is: Heating
[1/10/2017, 9:04:03 AM] Current humidity for Dining Room Thermostat is: 40%
[1/10/2017, 9:04:03 AM] Target temperature for Dining Room Thermostat is: 22 C
[1/10/2017, 9:04:03 AM] Target heating for Dining Room Thermostat is: Heating
[1/10/2017, 9:04:03 AM] Away for Dining Room Thermostat is: 1
[1/10/2017, 9:04:03 AM] Initializing platform accessory 'Salle De Bains Thermostat'...
[1/10/2017, 9:04:03 AM] Initializing platform accessory 'Dining Room Thermostat'...
Scan this code with your HomeKit App on your iOS device to pair with Homebridge:

    ┌────────────┐
    │ XXX-XX-XXX │
    └────────────┘

[1/10/2017, 9:04:03 AM] Homebridge is running on port 51826.
snowdd1 commented 7 years ago

Hi Gil,
according to the log everything is fine. The log entries with INFO registerSingleGA :

================================
INFO registerSingleGA 24/4/7
==========+> Read request:24/4/7

================================
INFO registerSingleGA 24/4/25
==========+> Read request:24/4/25

================================
INFO registerSingleGA 24/4/22
==========+> Read request:24/4/22

================================
INFO registerSingleGA 24/4/0

================================
INFO registerSingleGA 24/4/84
==========+> Read request:24/4/0

come from the Listen registering routine mentioned above https://github.com/snowdd1/homebridge-knx/blob/master/lib/knxmonitor.js#L30

And for all KNXReadRequests you've specified in the knx_config.json above there is one entry in the log, which I think is a logging line you've inserted yourself.

However, I did not see any answers to that READS, may be they've come later, or the objects are not configured to be read, in that case you've to wait for the light (or whatever) to be switched to get an answer.

Raoul

vddgil commented 7 years ago

Those debug line with "==========+>" has been added earlier in the process. File service-knx.js line 204.

The two line at the end comes from characteristic-knx.js line 174

Dest:24/4/7 Val: 1
Dest:24/4/0 Val: 0

I added like ten other light in my file and only the first one and the last one are working on homebridge startup.

There is something weird, I moved a "not working light" (address to read 24/4/36) at the end of the device array and now I only have the first one of the file printed (24/4/37).

snowdd1 commented 7 years ago

Did you start homebridge in debug mode? There should be much more output.
Try debug=* homebridge as start command.

vddgil commented 7 years ago

I already have a debug=* in my start command

screen shot 2017-01-10 at 15 10 35
vddgil commented 7 years ago

Can you tell me where the read response is handled in you code, so that I can add a debug and see what's happening more precisely

Thanks !

vddgil commented 7 years ago

Ok, I added all my devices (38) and I have the following logs:

Dest:24/4/37 Val: 0
Dest:24/4/73 Val: 0
Dest:24/4/21 Val: 0
Dest:24/4/31 Val: 0
Dest:24/4/69 Val: 0
Dest:24/4/73 Val: 0
Dest:24/4/25 Val: 1
Dest:24/4/73 Val: 0
Dest:24/4/17 Val: 0

It seems that some devices are skipped. Is it posssible that there is like a rate to respect. Like X requests per second.

I don't have the same log on each restart. Here is another:

Dest:24/4/37 Val: 0
Dest:24/4/73 Val: 0
Dest:24/4/69 Val: 0
Dest:24/4/21 Val: 0
Dest:24/4/73 Val: 0
Dest:24/4/73 Val: 0
Dest:24/4/22 Val: 1
Dest:24/4/34 Val: 0
Dest:24/4/73 Val: 0
Dest:24/4/56 Val: 0
Dest:24/4/31 Val: 0
Dest:24/4/73 Val: 0

It seems that there is something random here

Those logs comes from characteristic-knx.js#174

Thanks !

snowdd1 commented 7 years ago

Looks if some telegrams are skipped. You might try a newer build of knxd, those guys are currently very active rewriting it, especially @smurfix who seem more or less to do all the work (kudos here for him!)

smurfix commented 7 years ago

Try to turn on knxd logging (-t 1020). I suspect your gateways sinply needs more time between packets, as some can't be bothered to buffer them; try --send-delay 70 in front of the driver.

The "libev" branch is where I've removed the old+unsupported pthsem library (replacing it with libev); you might want to try that.

snowdd1 commented 7 years ago

Can you tell me where the read response is handled in you code, so that I can add a debug and see what's happening more precisely

Hi Gil, to answer your question: If you want to monitor all bus traffic (write and response) you can uncomment the following two lines:
https://github.com/snowdd1/homebridge-knx/blob/master/lib/knxmonitor.js#L49
https://github.com/snowdd1/homebridge-knx/blob/master/lib/knxmonitor.js#L65

Good luck.

vddgil commented 7 years ago

Hello @smurfix,

Here is the knxd monitoring log when I start my homebridge:

LPDU: BC 00 01 C4 25 E1 00 00 42 :L_Data low from 0.0.1 to 24/4/37 hops: 06 T_DATA_XXX_REQ A_GroupValue_Read
LPDU: BC 00 01 C4 1A E1 00 00 7D :L_Data low from 0.0.1 to 24/4/26 hops: 06 T_DATA_XXX_REQ A_GroupValue_Read
LPDU: BC 00 01 C4 4A E1 00 00 2D :L_Data low from 0.0.1 to 24/4/74 hops: 06 T_DATA_XXX_REQ A_GroupValue_Read
LPDU: BC 00 01 C4 0B E1 00 00 6C :L_Data low from 0.0.1 to 24/4/11 hops: 06 T_DATA_XXX_REQ A_GroupValue_Read
LPDU: BC 00 01 C4 15 E1 00 00 72 :L_Data low from 0.0.1 to 24/4/21 hops: 06 T_DATA_XXX_REQ A_GroupValue_Read
LPDU: BC 00 01 C4 07 E1 00 00 60 :L_Data low from 0.0.1 to 24/4/7 hops: 06 T_DATA_XXX_REQ A_GroupValue_Read
LPDU: BC 00 01 C4 52 E1 00 00 35 :L_Data low from 0.0.1 to 24/4/82 hops: 06 T_DATA_XXX_REQ A_GroupValue_Read
LPDU: BC 00 01 C4 42 E1 00 00 25 :L_Data low from 0.0.1 to 24/4/66 hops: 06 T_DATA_XXX_REQ A_GroupValue_Read
LPDU: BC 00 01 C4 56 E1 00 00 31 :L_Data low from 0.0.1 to 24/4/86 hops: 06 T_DATA_XXX_REQ A_GroupValue_Read
LPDU: BC 00 01 C4 5B E1 00 00 3C :L_Data low from 0.0.1 to 24/4/91 hops: 06 T_DATA_XXX_REQ A_GroupValue_Read
LPDU: BC 00 01 C4 3D E1 00 00 5A :L_Data low from 0.0.1 to 24/4/61 hops: 06 T_DATA_XXX_REQ A_GroupValue_Read
LPDU: BC 00 01 C4 45 E1 00 00 22 :L_Data low from 0.0.1 to 24/4/69 hops: 06 T_DATA_XXX_REQ A_GroupValue_Read
LPDU: BC 00 01 C4 06 E1 00 00 61 :L_Data low from 0.0.1 to 24/4/6 hops: 06 T_DATA_XXX_REQ A_GroupValue_Read
LPDU: BC 00 01 C4 49 E1 00 00 2E :L_Data low from 0.0.1 to 24/4/73 hops: 06 T_DATA_XXX_REQ A_GroupValue_Read
LPDU: BC 00 01 C4 2C E1 00 00 4B :L_Data low from 0.0.1 to 24/4/44 hops: 06 T_DATA_XXX_REQ A_GroupValue_Read
LPDU: BC 00 01 C4 4E E1 00 00 29 :L_Data low from 0.0.1 to 24/4/78 hops: 06 T_DATA_XXX_REQ A_GroupValue_Read
LPDU: BC 00 01 C4 61 E1 00 00 06 :L_Data low from 0.0.1 to 24/4/97 hops: 06 T_DATA_XXX_REQ A_GroupValue_Read
LPDU: BC 00 01 C4 3F E1 00 00 58 :L_Data low from 0.0.1 to 24/4/63 hops: 06 T_DATA_XXX_REQ A_GroupValue_Read
LPDU: BC 00 01 C4 04 E1 00 00 63 :L_Data low from 0.0.1 to 24/4/4 hops: 06 T_DATA_XXX_REQ A_GroupValue_Read
LPDU: BC 00 01 C4 35 E1 00 00 52 :L_Data low from 0.0.1 to 24/4/53 hops: 06 T_DATA_XXX_REQ A_GroupValue_Read
LPDU: BC 00 01 C4 1C E1 00 00 7B :L_Data low from 0.0.1 to 24/4/28 hops: 06 T_DATA_XXX_REQ A_GroupValue_Read
LPDU: BC 00 01 C4 00 E1 00 00 67 :L_Data low from 0.0.1 to 24/4/0 hops: 06 T_DATA_XXX_REQ A_GroupValue_Read
LPDU: BC 00 01 C4 43 E1 00 00 24 :L_Data low from 0.0.1 to 24/4/67 hops: 06 T_DATA_XXX_REQ A_GroupValue_Read
LPDU: BC 00 01 C4 19 E1 00 00 7E :L_Data low from 0.0.1 to 24/4/25 hops: 06 T_DATA_XXX_REQ A_GroupValue_Read
LPDU: BC 00 01 C4 16 E1 00 00 71 :L_Data low from 0.0.1 to 24/4/22 hops: 06 T_DATA_XXX_REQ A_GroupValue_Read
LPDU: BC 00 01 C4 0E E1 00 00 69 :L_Data low from 0.0.1 to 24/4/14 hops: 06 T_DATA_XXX_REQ A_GroupValue_Read
LPDU: BC 00 01 C4 0F E1 00 00 68 :L_Data low from 0.0.1 to 24/4/15 hops: 06 T_DATA_XXX_REQ A_GroupValue_Read
LPDU: BC 00 01 C4 11 E1 00 00 76 :L_Data low from 0.0.1 to 24/4/17 hops: 06 T_DATA_XXX_REQ A_GroupValue_Read
LPDU: BC 00 01 C4 87 E1 00 00 E0 :L_Data low from 0.0.1 to 24/4/135 hops: 06 T_DATA_XXX_REQ A_GroupValue_Read
LPDU: BC 00 01 C4 30 E1 00 00 57 :L_Data low from 0.0.1 to 24/4/48 hops: 06 T_DATA_XXX_REQ A_GroupValue_Read
LPDU: BC 00 01 C4 27 E1 00 00 40 :L_Data low from 0.0.1 to 24/4/39 hops: 06 T_DATA_XXX_REQ A_GroupValue_Read
LPDU: BC 00 01 C4 2B E1 00 00 4C :L_Data low from 0.0.1 to 24/4/43 hops: 06 T_DATA_XXX_REQ A_GroupValue_Read
LPDU: BC 00 01 C4 29 E1 00 00 4E :L_Data low from 0.0.1 to 24/4/41 hops: 06 T_DATA_XXX_REQ A_GroupValue_Read
LPDU: BC 00 01 C4 33 E1 00 00 54 :L_Data low from 0.0.1 to 24/4/51 hops: 06 T_DATA_XXX_REQ A_GroupValue_Read
LPDU: BC 00 01 C4 22 E1 00 00 45 :L_Data low from 0.0.1 to 24/4/34 hops: 06 T_DATA_XXX_REQ A_GroupValue_Read
LPDU: BC 00 01 C4 38 E1 00 00 5F :L_Data low from 0.0.1 to 24/4/56 hops: 06 T_DATA_XXX_REQ A_GroupValue_Read
LPDU: BC 00 01 C4 0A E1 00 00 6D :L_Data low from 0.0.1 to 24/4/10 hops: 06 T_DATA_XXX_REQ A_GroupValue_Read
LPDU: BC 00 01 C4 1F E1 00 00 78 :L_Data low from 0.0.1 to 24/4/31 hops: 06 T_DATA_XXX_REQ A_GroupValue_Read
LPDU: BC 00 01 C4 25 D1 00 00 72 :L_Data low from 0.0.1 to 24/4/37 hops: 05 T_DATA_XXX_REQ A_GroupValue_Read
LPDU: BC 00 01 C4 06 D1 00 00 51 :L_Data low from 0.0.1 to 24/4/6 hops: 05 T_DATA_XXX_REQ A_GroupValue_Read
LPDU: BC 00 01 C4 16 D1 00 00 41 :L_Data low from 0.0.1 to 24/4/22 hops: 05 T_DATA_XXX_REQ A_GroupValue_Read
LPDU: BC 00 01 C4 1F D1 00 00 48 :L_Data low from 0.0.1 to 24/4/31 hops: 05 T_DATA_XXX_REQ A_GroupValue_Read
LPDU: BC 02 0B C4 25 E1 00 40 0A :L_Data low from 0.2.11 to 24/4/37 hops: 06 T_DATA_XXX_REQ A_GroupValue_Response (small) 00
LPDU: BC 02 1D C4 06 E1 00 40 3F :L_Data low from 0.2.29 to 24/4/6 hops: 06 T_DATA_XXX_REQ A_GroupValue_Response (small) 00
LPDU: BC 02 0B C4 1F E1 00 40 30 :L_Data low from 0.2.11 to 24/4/31 hops: 06 T_DATA_XXX_REQ A_GroupValue_Response (small) 00
LPDU: 9C 02 1D C4 06 E1 00 40 1F :L_Data (repeated) low from 0.2.29 to 24/4/6 hops: 06 T_DATA_XXX_REQ A_GroupValue_Response (small) 00
LPDU: 9C 02 0B C4 1F E1 00 40 10 :L_Data (repeated) low from 0.2.11 to 24/4/31 hops: 06 T_DATA_XXX_REQ A_GroupValue_Response (small) 00
LPDU: 9C 02 1D C4 06 E1 00 40 1F :L_Data (repeated) low from 0.2.29 to 24/4/6 hops: 06 T_DATA_XXX_REQ A_GroupValue_Response (small) 00
LPDU: 9C 02 0B C4 1F E1 00 40 10 :L_Data (repeated) low from 0.2.11 to 24/4/31 hops: 06 T_DATA_XXX_REQ A_GroupValue_Response (small) 00
LPDU: 9C 02 1D C4 06 E1 00 40 1F :L_Data (repeated) low from 0.2.29 to 24/4/6 hops: 06 T_DATA_XXX_REQ A_GroupValue_Response (small) 00
LPDU: 9C 02 0B C4 1F E1 00 40 10 :L_Data (repeated) low from 0.2.11 to 24/4/31 hops: 06 T_DATA_XXX_REQ A_GroupValue_Response (small) 00
LPDU: BC 02 0D C4 16 E1 00 41 3E :L_Data low from 0.2.13 to 24/4/22 hops: 06 T_DATA_XXX_REQ A_GroupValue_Response (small) 01
LPDU: BC 02 1E C4 49 E1 00 40 73 :L_Data low from 0.2.30 to 24/4/73 hops: 06 T_DATA_XXX_REQ A_GroupValue_Response (small) 00
LPDU: 9C 02 0D C4 16 E1 00 41 1E :L_Data (repeated) low from 0.2.13 to 24/4/22 hops: 06 T_DATA_XXX_REQ A_GroupValue_Response (small) 01
LPDU: BC 02 1E C4 49 E1 00 40 73 :L_Data low from 0.2.30 to 24/4/73 hops: 06 T_DATA_XXX_REQ A_GroupValue_Response (small) 00
LPDU: BC 02 1E C4 49 E1 00 40 73 :L_Data low from 0.2.30 to 24/4/73 hops: 06 T_DATA_XXX_REQ A_GroupValue_Response (small) 00
LPDU: BC 02 1E C4 49 E1 00 40 73 :L_Data low from 0.2.30 to 24/4/73 hops: 06 T_DATA_XXX_REQ A_GroupValue_Response (small) 00

We can see three things:

I try to add the send-delay option and it didn't worked. I run the libev branch for this test ...

Thanks for your response,

Gil

smurfix commented 7 years ago

On 11.01.2017 20:07, Gil Vandendriessche wrote:

I try to add the send-delay option and it didn't worked.

With what value?

I run the libev branch for this test ...

Please update, and add "-t 1" directly before the -b ipt: option. The log output's timestamps will (hopefully) verify that the messages get in fact delayed appropriately.

-- -- Matthias Urlichs

vddgil commented 7 years ago

I added 500 as send-delay

I added -t 1 but nothing added in the logs :( 1 root moulard ssh 2017-01-11 20-47-15

vddgil commented 7 years ago

Ok, figured out how to put the send-delay option and everything is working fine now !

Thanks a lot for your help @snowdd1 and @smurfix.

@snowdd1 Do you want that I create a new issue for those addresse starting with 24 ? Because as of now, I can't start homebridge without modifying your code.

Thanks !

smurfix commented 7 years ago

Good to know that it works for the libev branch, because I didn't test that. ;-)

Anyway, it's a bus. Packets can still get lost, esp. when things get crazy starting up after a power failure. So if there's no answer homebridge should retry after a minute or so.

snowdd1 commented 7 years ago

@smurfix Matthias, thanks for helping with that - and for your great work with knxd!
@vddgil Gil, I placed a PR at node-eibd for that, and when there is a new version, I will update the homebridge-knx as well

And for the READs - it's just a convenience feature to get homebridge faster up to date on startup, it is not meant for (regular) polling. Your status objects must be active. If you want to have polling, feel free to figure that out and raise a PR...!

Closing this for now.

vddgil commented 7 years ago

@snowdd1 I don't want polling. I just wanted to get homebridge up to date at startup and it's working now !

Thanks for everything !