OSRAM Lightify Openhab2 Binding

No problem. I figured as much. I know you’re on the road a lot.

Alright, I took the weekend and created a new version which mainly fixes discovery bugs. I bought some more devices and figured out that the first device which ends up in “unknown type id” actually stopped the discovery, therefore the order in which the devices were registered mattered.

I also added support for the Lightify power socket, which made me change a little bit more code (stupid me in the first place :slight_smile:)

I’m on the road the next 3 weeks again but there’s an update uploaded to the known dropbox location. If you update, you’d better keep a backup of the old JAR, just in case.

For packet captures, we (or @arusa) came up with a better idea (at least for openHAB <-> gateway). Are you familiar with tcpdump? :slight_smile:

Thanks. I was actually wondering about using tcpdump or wireshark to supply you with raw network traffic. I’ve never used tcpdump, but I’ll give it a try today.

Here’s the output from tcpdump. The only thing I did during this time is switch a RGBW recessed light on and off, at least I tried to switch it on and off, it wasn’t responding. Those commands are in the traffic, with what appears to be other commands. I noticed traffic while I wasn’t doing anything.

10.1.10.106 is my gateway and 10.1.10.103 is my raspberrypi. I tried to make sense out of the traffic, but gave up. According to the documentation, the first few bytes (4500 0028) mean that data is 45 bytes long, and the command is 28, set device name? And then I see some other command IDs like 40, 48, 41, and 3c that aren’t listed, so I must be reading this wrong.

Anyways, here you go. Let me know if you need me to do anything differently.

15:40:30.500726 IP 10.1.10.106.4000 > 10.1.10.103.47526: Flags [.], ack 2590805202, win 16392, length 0
	0x0000:  4500 0028 015c 0000 ff06 91a1 0a01 0a6a  E..(.\.........j
	0x0010:  0a01 0a67 0fa0 b9a6 0000 24bf 9a6c 8cd2  ...g......$..l..
	0x0020:  5010 4008 31b5 0000 0000 ae7c 5dcd       P.@.1......|].
15:40:30.572476 IP 10.1.10.103.47526 > 10.1.10.106.4000: Flags [P.], seq 1:25, ack 0, win 29200, length 24
	0x0000:  4500 0040 8e55 4000 4006 8390 0a01 0a67  E..@.U@.@......g
	0x0010:  0a01 0a6a b9a6 0fa0 9a6c 8cd2 0000 24bf  ...j.....l....$.
	0x0020:  5018 7210 2905 0000 1600 0068 8a00 0000  P.r.)......h....
	0x0030:  332b 0600 0026 1884 0000 0000 0000 0000  3+...&..........
15:40:30.679361 IP 10.1.10.106.4000 > 10.1.10.103.47526: Flags [P.], seq 0:20, ack 25, win 16368, length 20
	0x0000:  4500 003c 015d 0000 ff06 918c 0a01 0a6a  E..<.].........j
	0x0010:  0a01 0a67 0fa0 b9a6 0000 24bf 9a6c 8cea  ...g......$..l..
	0x0020:  5018 3ff0 b270 0000 1200 0168 8900 0000  P.?..p.....h....
	0x0030:  0001 009f 3806 0000 2618 8401            ....8...&...
15:40:30.679494 IP 10.1.10.103.47526 > 10.1.10.106.4000: Flags [.], ack 20, win 29200, length 0
	0x0000:  4500 0028 8e56 4000 4006 83a7 0a01 0a67  E..(.V@.@......g
	0x0010:  0a01 0a6a b9a6 0fa0 9a6c 8cea 0000 24d3  ...j.....l....$.
	0x0020:  5010 7210 28ed 0000                      P.r.(...
15:40:31.284437 IP 10.1.10.106.4000 > 10.1.10.103.47526: Flags [P.], seq 20:52, ack 25, win 16368, length 32
	0x0000:  4500 0048 015e 0000 ff06 917f 0a01 0a6a  E..H.^.........j
	0x0010:  0a01 0a67 0fa0 b9a6 0000 24d3 9a6c 8cea  ...g......$..l..
	0x0020:  5018 3ff0 422e 0000 1e00 0168 8a00 0000  P.?.B......h....
	0x0030:  0001 0033 2b06 0000 2618 8400 0201 648e  ...3+...&.....d.
	0x0040:  0aff ffff ff00 0000                      ........
15:40:31.284558 IP 10.1.10.103.47526 > 10.1.10.106.4000: Flags [.], ack 52, win 29200, length 0
	0x0000:  4500 0028 8e57 4000 4006 83a6 0a01 0a67  E..(.W@.@......g
	0x0010:  0a01 0a6a b9a6 0fa0 9a6c 8cea 0000 24f3  ...j.....l....$.
	0x0020:  5010 7210 28ed 0000                      P.r.(...
15:40:39.957788 IP 10.1.10.103.47526 > 10.1.10.106.4000: Flags [P.], seq 25:50, ack 52, win 29200, length 25
	0x0000:  4500 0041 8e58 4000 4006 838c 0a01 0a67  E..A.X@.@......g
	0x0010:  0a01 0a6a b9a6 0fa0 9a6c 8cea 0000 24f3  ...j.....l....$.
	0x0020:  5018 7210 2906 0000 1700 0032 8b00 0000  P.r.)......2....
	0x0030:  332b 0600 0026 1884 0000 0000 0000 0000  3+...&..........
	0x0040:  00                                       .
15:40:40.008752 IP 10.1.10.106.4000 > 10.1.10.103.47526: Flags [.], ack 50, win 16343, length 0
	0x0000:  4500 0028 0160 0000 ff06 919d 0a01 0a6a  E..(.`.........j
	0x0010:  0a01 0a67 0fa0 b9a6 0000 24f3 9a6c 8d03  ...g......$..l..
	0x0020:  5010 3fd7 3181 0000 0000 4e51 9eda       P.?.1.....NQ..
15:40:40.095884 IP 10.1.10.106.4000 > 10.1.10.103.47526: Flags [P.], seq 52:72, ack 50, win 16343, length 20
	0x0000:  4500 003c 0161 0000 ff06 9188 0a01 0a6a  E..<.a.........j
	0x0010:  0a01 0a67 0fa0 b9a6 0000 24f3 9a6c 8d03  ...g......$..l..
	0x0020:  5018 3fd7 bddf 0000 1200 0132 8b00 0000  P.?........2....
	0x0030:  0001 0033 2b06 0000 2618 8400            ...3+...&...
15:40:40.095976 IP 10.1.10.103.47526 > 10.1.10.106.4000: Flags [.], ack 72, win 29200, length 0
	0x0000:  4500 0028 8e59 4000 4006 83a4 0a01 0a67  E..(.Y@.@......g
	0x0010:  0a01 0a6a b9a6 0fa0 9a6c 8d03 0000 2507  ...j.....l....%.
	0x0020:  5010 7210 28ed 0000                      P.r.(...
15:40:50.517305 IP 10.1.10.106.4000 > 10.1.10.103.47526: Flags [.], ack 50, win 16343, length 0
	0x0000:  4500 0028 0163 0000 ff06 919a 0a01 0a6a  E..(.c.........j
	0x0010:  0a01 0a67 0fa0 b9a6 0000 2506 9a6c 8d03  ...g......%..l..
	0x0020:  5010 3fd7 316e 0000 0000 1aa1 f8d7       P.?.1n........
15:40:50.517383 IP 10.1.10.103.47526 > 10.1.10.106.4000: Flags [.], ack 72, win 29200, length 0
	0x0000:  4500 0028 8e5a 4000 4006 83a3 0a01 0a67  E..(.Z@.@......g
	0x0010:  0a01 0a6a b9a6 0fa0 9a6c 8d03 0000 2507  ...j.....l....%.
	0x0020:  5010 7210 28ed 0000                      P.r.(...
15:40:58.936531 IP 10.1.10.106.mdns > 224.0.0.251.mdns: 0*- [0q] 3/0/0 (Cache flush) SRV Lightify-027d74c8.local.:80 0 0, (Cache flush) PTR Lightify-027d74c8._http._tcp.local., (Cache flush) TXT "txtvers=2" "epoch=4" (217)
	0x0000:  4500 00f5 0164 0000 ff11 c42d 0a01 0a6a  E....d.....-...j
	0x0010:  e000 00fb 14e9 14e9 00e1 a062 0000 8400  ...........b....
	0x0020:  0000 0003 0000 0000 114c 6967 6874 6966  .........Lightif
	0x0030:  792d 3032 3764 3734 6338 055f 6874 7470  y-027d74c8._http
	0x0040:  045f 7463 7005 6c6f 6361 6c00 0021 8001  ._tcp.local..!..
	0x0050:  0000 00ff 001f 0000 0000 0050 114c 6967  ...........P.Lig
	0x0060:  6874 6966 792d 3032 3764 3734 6338 056c  htify-027d74c8.l
	0x0070:  6f63 616c 0005 5f68 7474 7004 5f74 6370  ocal.._http._tcp
	0x0080:  056c 6f63 616c 0000 0c80 0100 0000 ff00  .local..........
	0x0090:  2411 4c69 6768 7469 6679 2d30 3237 6437  $.Lightify-027d7
	0x00a0:  3463 3805 5f68 7474 7004 5f74 6370 056c  4c8._http._tcp.l
	0x00b0:  6f63 616c 0011 4c69 6768 7469 6679 2d30  ocal..Lightify-0
	0x00c0:  3237 6437 3463 3805 5f68 7474 7004 5f74  27d74c8._http._t
	0x00d0:  6370 056c 6f63 616c 0000 1080 0100 0000  cp.local........
	0x00e0:  ff00 1209 7478 7476 6572 733d 3207 6570  ....txtvers=2.ep
	0x00f0:  6f63 683d 34                             och=4
15:40:58.992991 IP 10.1.10.106.mdns > 224.0.0.251.mdns: 0*- [0q] 3/0/0 (Cache flush) SRV Lightify-027d74c8.local.:80 0 0, (Cache flush) PTR Lightify-027d74c8._http._tcp.local., (Cache flush) TXT "txtvers=2" "epoch=4" (217)
	0x0000:  4500 00f5 0165 0000 ff11 c42c 0a01 0a6a  E....e.....,...j
	0x0010:  e000 00fb 14e9 14e9 00e1 a062 0000 8400  ...........b....
	0x0020:  0000 0003 0000 0000 114c 6967 6874 6966  .........Lightif
	0x0030:  792d 3032 3764 3734 6338 055f 6874 7470  y-027d74c8._http
	0x0040:  045f 7463 7005 6c6f 6361 6c00 0021 8001  ._tcp.local..!..
	0x0050:  0000 00ff 001f 0000 0000 0050 114c 6967  ...........P.Lig
	0x0060:  6874 6966 792d 3032 3764 3734 6338 056c  htify-027d74c8.l
	0x0070:  6f63 616c 0005 5f68 7474 7004 5f74 6370  ocal.._http._tcp
	0x0080:  056c 6f63 616c 0000 0c80 0100 0000 ff00  .local..........
	0x0090:  2411 4c69 6768 7469 6679 2d30 3237 6437  $.Lightify-027d7
	0x00a0:  3463 3805 5f68 7474 7004 5f74 6370 056c  4c8._http._tcp.l
	0x00b0:  6f63 616c 0011 4c69 6768 7469 6679 2d30  ocal..Lightify-0
	0x00c0:  3237 6437 3463 3805 5f68 7474 7004 5f74  27d74c8._http._t
	0x00d0:  6370 056c 6f63 616c 0000 1080 0100 0000  cp.local........
	0x00e0:  ff00 1209 7478 7476 6572 733d 3207 6570  ....txtvers=2.ep
	0x00f0:  6f63 683d 34                             och=4
15:40:59.141368 IP 10.1.10.106.mdns > 224.0.0.251.mdns: 0*- [0q] 3/0/0 (Cache flush) SRV Lightify-027d74c8.local.:80 0 0, (Cache flush) PTR Lightify-027d74c8._http._tcp.local., (Cache flush) TXT "txtvers=2" "epoch=4" (217)
	0x0000:  4500 00f5 0166 0000 ff11 c42b 0a01 0a6a  E....f.....+...j
	0x0010:  e000 00fb 14e9 14e9 00e1 a062 0000 8400  ...........b....
	0x0020:  0000 0003 0000 0000 114c 6967 6874 6966  .........Lightif
	0x0030:  792d 3032 3764 3734 6338 055f 6874 7470  y-027d74c8._http
	0x0040:  045f 7463 7005 6c6f 6361 6c00 0021 8001  ._tcp.local..!..
	0x0050:  0000 00ff 001f 0000 0000 0050 114c 6967  ...........P.Lig
	0x0060:  6874 6966 792d 3032 3764 3734 6338 056c  htify-027d74c8.l
	0x0070:  6f63 616c 0005 5f68 7474 7004 5f74 6370  ocal.._http._tcp
	0x0080:  056c 6f63 616c 0000 0c80 0100 0000 ff00  .local..........
	0x0090:  2411 4c69 6768 7469 6679 2d30 3237 6437  $.Lightify-027d7
	0x00a0:  3463 3805 5f68 7474 7004 5f74 6370 056c  4c8._http._tcp.l
	0x00b0:  6f63 616c 0011 4c69 6768 7469 6679 2d30  ocal..Lightify-0
	0x00c0:  3237 6437 3463 3805 5f68 7474 7004 5f74  27d74c8._http._t
	0x00d0:  6370 056c 6f63 616c 0000 1080 0100 0000  cp.local........
	0x00e0:  ff00 1209 7478 7476 6572 733d 3207 6570  ....txtvers=2.ep
	0x00f0:  6f63 683d 34                             och=4
15:40:59.174150 IP 10.1.10.106.mdns > 224.0.0.251.mdns: 0*- [0q] 3/0/0 (Cache flush) SRV Lightify-027d74c8.local.:80 0 0, (Cache flush) PTR Lightify-027d74c8._http._tcp.local., (Cache flush) TXT "txtvers=2" "epoch=4" (217)
	0x0000:  4500 00f5 0167 0000 ff11 c42a 0a01 0a6a  E....g.....*...j
	0x0010:  e000 00fb 14e9 14e9 00e1 a062 0000 8400  ...........b....
	0x0020:  0000 0003 0000 0000 114c 6967 6874 6966  .........Lightif
	0x0030:  792d 3032 3764 3734 6338 055f 6874 7470  y-027d74c8._http
	0x0040:  045f 7463 7005 6c6f 6361 6c00 0021 8001  ._tcp.local..!..
	0x0050:  0000 00ff 001f 0000 0000 0050 114c 6967  ...........P.Lig
	0x0060:  6874 6966 792d 3032 3764 3734 6338 056c  htify-027d74c8.l
	0x0070:  6f63 616c 0005 5f68 7474 7004 5f74 6370  ocal.._http._tcp
	0x0080:  056c 6f63 616c 0000 0c80 0100 0000 ff00  .local..........
	0x0090:  2411 4c69 6768 7469 6679 2d30 3237 6437  $.Lightify-027d7
	0x00a0:  3463 3805 5f68 7474 7004 5f74 6370 056c  4c8._http._tcp.l
	0x00b0:  6f63 616c 0011 4c69 6768 7469 6679 2d30  ocal..Lightify-0
	0x00c0:  3237 6437 3463 3805 5f68 7474 7004 5f74  27d74c8._http._t
	0x00d0:  6370 056c 6f63 616c 0000 1080 0100 0000  cp.local........
	0x00e0:  ff00 1209 7478 7476 6572 733d 3207 6570  ....txtvers=2.ep
	0x00f0:  6f63 683d 34                             och=4
15:40:59.448571 IP 10.1.10.106.mdns > 224.0.0.251.mdns: 0*- [0q] 3/0/0 (Cache flush) SRV Lightify-027d74c8.local.:80 0 0, (Cache flush) PTR Lightify-027d74c8._http._tcp.local., (Cache flush) TXT "txtvers=2" "epoch=4" (217)
	0x0000:  4500 00f5 0168 0000 ff11 c429 0a01 0a6a  E....h.....)...j
	0x0010:  e000 00fb 14e9 14e9 00e1 a062 0000 8400  ...........b....
	0x0020:  0000 0003 0000 0000 114c 6967 6874 6966  .........Lightif
	0x0030:  792d 3032 3764 3734 6338 055f 6874 7470  y-027d74c8._http
	0x0040:  045f 7463 7005 6c6f 6361 6c00 0021 8001  ._tcp.local..!..
	0x0050:  0000 00ff 001f 0000 0000 0050 114c 6967  ...........P.Lig
	0x0060:  6874 6966 792d 3032 3764 3734 6338 056c  htify-027d74c8.l
	0x0070:  6f63 616c 0005 5f68 7474 7004 5f74 6370  ocal.._http._tcp
	0x0080:  056c 6f63 616c 0000 0c80 0100 0000 ff00  .local..........
	0x0090:  2411 4c69 6768 7469 6679 2d30 3237 6437  $.Lightify-027d7
	0x00a0:  3463 3805 5f68 7474 7004 5f74 6370 056c  4c8._http._tcp.l
	0x00b0:  6f63 616c 0011 4c69 6768 7469 6679 2d30  ocal..Lightify-0
	0x00c0:  3237 6437 3463 3805 5f68 7474 7004 5f74  27d74c8._http._t
	0x00d0:  6370 056c 6f63 616c 0000 1080 0100 0000  cp.local........
	0x00e0:  ff00 1209 7478 7476 6572 733d 3207 6570  ....txtvers=2.ep
	0x00f0:  6f63 683d 34                             och=4
15:40:59.477288 IP 10.1.10.106.mdns > 224.0.0.251.mdns: 0*- [0q] 3/0/0 (Cache flush) SRV Lightify-027d74c8.local.:80 0 0, (Cache flush) PTR Lightify-027d74c8._http._tcp.local., (Cache flush) TXT "txtvers=2" "epoch=4" (217)
	0x0000:  4500 00f5 0169 0000 ff11 c428 0a01 0a6a  E....i.....(...j
	0x0010:  e000 00fb 14e9 14e9 00e1 a062 0000 8400  ...........b....
	0x0020:  0000 0003 0000 0000 114c 6967 6874 6966  .........Lightif
	0x0030:  792d 3032 3764 3734 6338 055f 6874 7470  y-027d74c8._http
	0x0040:  045f 7463 7005 6c6f 6361 6c00 0021 8001  ._tcp.local..!..
	0x0050:  0000 00ff 001f 0000 0000 0050 114c 6967  ...........P.Lig
	0x0060:  6874 6966 792d 3032 3764 3734 6338 056c  htify-027d74c8.l
	0x0070:  6f63 616c 0005 5f68 7474 7004 5f74 6370  ocal.._http._tcp
	0x0080:  056c 6f63 616c 0000 0c80 0100 0000 ff00  .local..........
	0x0090:  2411 4c69 6768 7469 6679 2d30 3237 6437  $.Lightify-027d7
	0x00a0:  3463 3805 5f68 7474 7004 5f74 6370 056c  4c8._http._tcp.l
	0x00b0:  6f63 616c 0011 4c69 6768 7469 6679 2d30  ocal..Lightify-0
	0x00c0:  3237 6437 3463 3805 5f68 7474 7004 5f74  27d74c8._http._t
	0x00d0:  6370 056c 6f63 616c 0000 1080 0100 0000  cp.local........
	0x00e0:  ff00 1209 7478 7476 6572 733d 3207 6570  ....txtvers=2.ep
	0x00f0:  6f63 683d 34                             och=4
15:41:01.024183 IP 10.1.10.106.4000 > 10.1.10.103.47526: Flags [.], ack 50, win 16343, length 0
	0x0000:  4500 0028 016a 0000 ff06 9193 0a01 0a6a  E..(.j.........j
	0x0010:  0a01 0a67 0fa0 b9a6 0000 2506 9a6c 8d03  ...g......%..l..
	0x0020:  5010 3fd7 316e 0000 0000 22b5 76f2       P.?.1n....".v.
15:41:01.024265 IP 10.1.10.103.47526 > 10.1.10.106.4000: Flags [.], ack 72, win 29200, length 0
	0x0000:  4500 0028 8e5b 4000 4006 83a2 0a01 0a67  E..(.[@.@......g
	0x0010:  0a01 0a6a b9a6 0fa0 9a6c 8d03 0000 2507  ...j.....l....%.
	0x0020:  5010 7210 28ed 0000                      P.r.(...
15:41:11.531949 IP 10.1.10.106.4000 > 10.1.10.103.47526: Flags [.], ack 50, win 16343, length 0
	0x0000:  4500 0028 016b 0000 ff06 9192 0a01 0a6a  E..(.k.........j
	0x0010:  0a01 0a67 0fa0 b9a6 0000 2506 9a6c 8d03  ...g......%..l..
	0x0020:  5010 3fd7 316e 0000 0000 ec4a 617c       P.?.1n.....Ja|
15:41:11.532043 IP 10.1.10.103.47526 > 10.1.10.106.4000: Flags [.], ack 72, win 29200, length 0
	0x0000:  4500 0028 8e5c 4000 4006 83a1 0a01 0a67  E..(.\@.@......g
	0x0010:  0a01 0a6a b9a6 0fa0 9a6c 8d03 0000 2507  ...j.....l....%.
	0x0020:  5010 7210 28ed 0000                      P.r.(...
15:41:16.536466 ARP, Request who-has 10.1.10.106 tell 10.1.10.103, length 28
	0x0000:  0001 0800 0604 0001 b827 ebb9 eb3b 0a01  .........'...;..
	0x0010:  0a67 0000 0000 0000 0a01 0a6a            .g.........j
15:41:16.538407 ARP, Reply 10.1.10.106 is-at 84:18:26:7d:74:c8 (oui Unknown), length 112
	0x0000:  0001 0800 0604 0002 8418 267d 74c8 0a01  ..........&}t...
	0x0010:  0a6a b827 ebb9 eb3b 0a01 0a67 0000 0000  .j.'...;...g....
	0x0020:  0000 0000 0000 0000 0000 0000 0000 7b59  ..............{Y
	0x0030:  9a04 d399 2d26 6f88 e954 c812 605f 6f88  ....-&o..T..`_o.
	0x0040:  000c 0001 0000 003c 0028 2556 6563 746f  .......<.(%Vecto
	0x0050:  7266 6f72 6d20 456e 6572 6779 2042 7269  rform.Energy.Bri
	0x0060:  6467 6540 3030 3032 6637 3132 6666 6230  dge@0002f712ffb0
15:41:22.042298 IP 10.1.10.106.4000 > 10.1.10.103.47526: Flags [.], ack 50, win 16343, length 0
	0x0000:  4500 0028 016c 0000 ff06 9191 0a01 0a6a  E..(.l.........j
	0x0010:  0a01 0a67 0fa0 b9a6 0000 2506 9a6c 8d03  ...g......%..l..
	0x0020:  5010 3fd7 316e 0000 0000 401a 7b5b       P.?.1n....@.{[
15:41:22.042384 IP 10.1.10.103.47526 > 10.1.10.106.4000: Flags [.], ack 72, win 29200, length 0
	0x0000:  4500 0028 8e5d 4000 4006 83a0 0a01 0a67  E..(.]@.@......g
	0x0010:  0a01 0a6a b9a6 0fa0 9a6c 8d03 0000 2507  ...j.....l....%.
	0x0020:  5010 7210 28ed 0000                      P.r.(...
15:41:32.552308 IP 10.1.10.106.4000 > 10.1.10.103.47526: Flags [.], ack 50, win 16343, length 0
	0x0000:  4500 0028 016d 0000 ff06 9190 0a01 0a6a  E..(.m.........j
	0x0010:  0a01 0a67 0fa0 b9a6 0000 2506 9a6c 8d03  ...g......%..l..
	0x0020:  5010 3fd7 316e 0000 0000 8ee5 6cd5       P.?.1n......l.
15:41:32.552395 IP 10.1.10.103.47526 > 10.1.10.106.4000: Flags [.], ack 72, win 29200, length 0
	0x0000:  4500 0028 8e5e 4000 4006 839f 0a01 0a67  E..(.^@.@......g
	0x0010:  0a01 0a6a b9a6 0fa0 9a6c 8d03 0000 2507  ...j.....l....%.
	0x0020:  5010 7210 28ed 0000                      P.r.(...
15:41:43.061353 IP 10.1.10.106.4000 > 10.1.10.103.47526: Flags [.], ack 50, win 16343, length 0
	0x0000:  4500 0028 016f 0000 ff06 918e 0a01 0a6a  E..(.o.........j
	0x0010:  0a01 0a67 0fa0 b9a6 0000 2506 9a6c 8d03  ...g......%..l..
	0x0020:  5010 3fd7 316e 0000 0000 8f74 ecb0       P.?.1n.....t..
15:41:43.061424 IP 10.1.10.103.47526 > 10.1.10.106.4000: Flags [.], ack 72, win 29200, length 0
	0x0000:  4500 0028 8e5f 4000 4006 839e 0a01 0a67  E..(._@.@......g
	0x0010:  0a01 0a6a b9a6 0fa0 9a6c 8d03 0000 2507  ...j.....l....%.
	0x0020:  5010 7210 28ed 0000                      P.r.(...

How nice! I have no devices from Osram’s Lightify family, but I would buy several if you were to support the Lightify Pro PBC. So I mention it since you were looking for “ideas” :slight_smile:

The Lightify Pro PBC has the quite unique ability to let you integrate legacy devices, blending “cool” with “traditional”. You can connect up to 4 light switches or push buttons, and translate their actions to ZigBee. It is small enough that it can be placed wherever there were relays, etc.

With a box like this, you could:

  • Use a push-button, with the short press to switch a light on/off (legacy “relay” mode), and long presses to dim, etc.
  • Reuse a legacy light switch, using any change of state (from on to off, or from off to on) as if it were a push-button action
  • Act on presses from multiple buttons to change scenes (e.g. press two buttons = all 10 lights on/off)
  • Use Up/Down button as an alternative way to control dimming

A lot of the traffic is the mDNS request to discover lightify gateways. So nothing to worry about. I normally filter it out in my wireshark scans, since by now I have started to build a lua dissector to dissect the packets right inside of wireshark.

I’m just home for a few hours, so looking at your dump will take a bit more. It would also be great if you could just dump the tcpdump logging into a pcap file which can be directly loaded into wireshark :slight_smile: If a few more commands are implemented, I’m also happy to share the dissector which makes it easier for everyone to help out.

I’m happy to support Lightify Pro but I don’t have any hardware. At the moment reverse engineering of the native protocol is already a lot of work but I’m glad for every piece of help in form of pull requests to the protocol, help with the openHAB binding or just zigbee compatible hardware (OSRAM or others), to support as much as possible :slight_smile:

Here you go. In this capture, I added two RGBW lights and then turned one on and off about a dozen times. It worked for the first 3-4 times and then did not respond for the rest.

https://box.com/shared/static/9hopvxww8ctqqwms32576r5u3gvq7hg3.pcap

Have you had a chance to review the pcap file I provided, or If not, can you post a copy of the dissector either on here or in the git repo and I’ll take a stab at my network traffic?

Just curious to why you look at wireshark scans to figure out communication rather than using to public API?

Last time I checked, the API only worked through the osram cloud and not directly with the bridge, so if your internet connection goes down, your lights stop working and there’s also a slight delay which is annoying when you’re trying to combine motion sensors with lights.

Has the API changed to allow local mode?

Nope, it has not. And there is the reason :slight_smile:

There is no reason, and yes that is exactly the reason. I don’t like the idea to send this through the cloud based API. The second reason is that I like to reverse engineer protocols. Unfortunately it is time consuming.

If you like to have a cloud API based implementation, I guess there’s a meaning for that, I just don’t like the idea :slight_smile:

I got the new implementation already. It is much more reliable right now, before I only owned one bulb and everything worked fine until you have more than one. I just want to make sure color and stuff is working nicely again before I put a new version online. I also talked to @Kai and we definitely want to get a Lightify integration version into openHab 2.1.

That’s a bummer. I was hoping you were going to say otherwise because using a published API would be the way to go. I dug through their sample code and found the following in appconfig.yaml

PRODUCTION-EU : "https://eu.lightify-api.org/lightify/services"
PRODUCTION-US : "https://us.lightify-api.org/lightify/services"
UAT : "https://192.168.0.100:8443"
DEVELOPMENT : "http://localhost:8080/lightify/services"

Both UAT and DEVELOPMENT are local network addresses, but I think that’s in there for testing over at OSRAM. I did NOT confirm this by changing the address to the IP of my bridge.

Btw here is the LUA based dissector for Wireshark, hope it helps you a bit. Feel free to extend it and send in pull request: https://github.com/noctarius/lightify-binary-protocol/blob/master/osram-lightify.lua

1 Like

Hi Noctarius, amazing! Downloaded, copied to addons and wham! the osram gateway was instantly found in the inbox! Thank you so much for this awesome binding.

Noctarius, thanks for all the hard work. I was wondering if you have updated the code in github yet. I have quite of few of the OSRAM lights and would like to try it out. I’ll be glad to help with any network captures for any device you don’t have access to if you’ll post the code or the JAR. Thanks.

Hi Noctarius,

After i used this binding for 2 weeks, i noticed that it makes the openhab sluggish and unresponsive. For example, turning on/off light switches sometimes takes several seconds to react or they dont react at all. I tried it twice on a fresh OH2 install from the image file. And both of the times i had the same after a few days (or maybe even few hours).

Have you noticed the same behavior or is this all a local issue i have with my setup?

Thanks.
Emre

Hey Emre,

No unfortunately I have the same behavior and it became worse with the last gateway update. Yesterday I had a few minutes to deactivate the auto-status-update polling and it seems to work, which would most possibly mean, that I overload the gateway with just a few requests every 5 seconds. I hope to get some better picture tonight, when I need to use it again to switch on / off lights.

I’ll probably go ahead and let it be deactivated for now until I have a better solution (when it actually works tonight). I’ll keep you updated.

1 Like

PS: to all, sorry for being so unresponsive at the moment, been traveling most of the time and that means, not at home, no chance to work on the binding :sweat: