[Release] [*ALPHA*] Lightify Gateway Integration - 0.22

How many spaces are there? It should only truncate if it reads two spaces in a row, but I may have botched that.

I just found that by deleting all of the devices and re-adding them that all the groups seemed to repopulate. Maybe I had done something procedural that caused the issue.

My devices have no more than 3 spaces in them, but I think that was a red herring.

1 Like

Regardless, I should probably change the name-discovery algorithms to work backwards and detect where the names end, rather than truncating after two spaces. :slight_smile:

It's been quiet on this thread lately.... I've been digging into your code and ramping up on Groovy in an attempt to solve the 20 device limit. I'm contemplating between concatenating subsequent response arrays from the user defined parse method vs. trying to modify the frame size for the communication coming from the Lightify hub. Any thoughts?

@adamkempenich I haven't upgraded since .21 app and Gateway (0.2) because it simply WORKS !! Why fix something that works works, right ??

I don't really plan on ever upgrading because for my needs my current code works... I mean to say adding those bells and whistles like groups really makes no sense to me.

I do love the code though !

I’ve already got a fix in the works. :slight_smile: if you have something else, I’d be open to take a look at it. Basically I’m delaying parsing by 250ms until both (or all) packets come in, and I’m adding them to a state variable. After that, the variables parse through correctly.

I’ve been a bit quieter around here lately for a couple reasons. I’ve had to focus on some real-world events, (we’ve been traveling for work a lot more, lately, among other things), and I haven’t had the time or energy to put in quality work.

With that, I’m still working on this. :slight_smile: The 20-Device limit (and scenes) are next on my list for release.

@anon61068208 Nope, as long as you don’t see any negative behavior from your current version!

1 Like

My thoughts have been to define a static variable that stores the partial device data at the end of the 1kB frame. (There are 32 bytes at the end of the packet, not the full 50 bytes per device.) Then, when the next parse() is called with the next packet it can be concatenated to the end of this leftover data. Now, I can't seem to get the scope right with variables as any tutorials I've followed on static variables does not actually result in a persistent value stored in the variable.... Maybe a "state variable" as you described is the right way to do this. Any pointers on how to define such a state variable? The developer documentation didn't seem to have any information.

Ok So I have an odd thing happen. But first let me explain. I ordered a whole bunch of the gardenspots and Flex devices. I proceeded to update all the controllers but don't intend to use them all only a few (Since it was cheaper to buy more sets than extensions) I already had one added to Habitat. Once they were all updated, I removed the all through the app. Also renamed the device that was already added to HU, but deleted it from my device list in HU so I could add it back with the correct name.

Now I go into the HU app and go to select device, and it shows me all the devices I did have connected to the lightify hub, but since have deleted them, and the renamed device does not show.

How can I get the HU Lightify Bridge Integration to regrab the device list and replace it with what it finds so it only shows what is currently connected to it?

Yup.

state.packetsReceived =

Then, push it with

state.packetsReceived = state.packetsReceived + bytes

after parsing the final time, reset it to a null value.

If you'd like, I can get something by Friday that handles this. I had seven bulbs die within the last week (crazy) but I can still add them to get their values and do some testing.


I actually encountered this yesterday, too. I was able to just leave them checked and my hub re-created the devices with the correct MAC address. I will have to add something that clears the array each time that pane is loaded. Short of that, you'll have to uninstall the app and reinstall it.

That would be awesome if you could do it whenever you have time. No rush and much appreciated. I'm having fun flexing my old coding muscles in the meantime.

1 Like

Heya!! So I was a previous user of this integration, communicated via Facebook, I found this alpha version and decided to upgrade. I deleted all code and apps, all drivers and reinstalled all. However, I have gotten to the part where, I have installed app code, installed child drivers, added child drivers as virtual devices, input gateway ip another info, refresh was already at 30, and then went to manage devises/add groups section, but it will not show anything in those tabs. No devices to manage. Any help?

1 Like

Howdy!!

If you enable log debug for the app, is anything showing in your logs?

I have tried to uninstall , reinstall. Was I supposed to (after adding child device code) add the devices as virtual devices? (Virtual devices:scrolltobottom:addlightifychild device from list)?? <-(did that btw)

I can see that the child devices show up when I set a dimmer or switch in rule machine. However they were unresponsive by themselves.

Another thing I noticed is that, while trying to follow the instructions, ... after I added child driver codes, I went into the app to input IP and set the refresh(which was already set at 30), I noticed the gateway device was automatically added to devices but the child devices weren't added. So i manually added them as virtual devices, then went into app to manage devices tab and couldn't find anything.

No, you only need to install the app. Devices will be created by the app after the gateway propagates them, and you select them from the app to be created.

You should delete the virtual bulbs, but keep the gateway. Is there anything being passed into your logs? I'd imagine, since it's seeing the gateway, the devices should show up. Otherwise there is something going on with the communications to the gateway.

Woke up to this email this morning. and though I would share:

THE LIGHTIFY CLOUD SERVERS WILL BE SWITCHED OFF ON AUGUST 31st 2021

Dear LIGHTIFY User,

Unfortunately, we have to share some bad news with you today. After five years of service, we have taken the tough decision to shut-off the LIGHTFY cloud servers on August 31st, 2021.

What you need to know now:

You still have plenty of time to react. The LIGHTIFY cloud servers will be available until August 31st, 2021. Only after this date the LIGHTIFY service and support will be discontinued.

This means, that there will be no further updates and a connection to the Amazon and Google voice assistants will not be possible anymore after this date. Compatibility to newer versions of the iOS and Android operating systems can’t also be assured thereafter. However, until then you can use your LIGHTIFY system without limitations.

As the LIGHTIFY System is a cloud-based system, the majority of functions will unfortunately be lost and LIGHTIFY app control will be only very limited. Here you can find an overview of all affected functions.

What you need to do after this period:

To control your smart lights and plugs beyond August 31st, 2021, you need to fully reset your entire system. Afterwards you can simply integrate it into any other ZigBee® compatible system – like other smart lighting or smart home systems with intelligent assistants that are available on the market.

Why is OSRAM switching off the LIGHTIFY cloud servers?

The LIGHTIFY system is meanwhile technically outdated: Its performance (e.g. in respect to reaction times when controlling devices) is significantly lower compared to other systems in the market. Furthermore, the implemented ZigBee® standard is not state of the art anymore (ZigBee® Light Link and ZigBee® Home Automation instead of ZigBee® 3.0) which makes it more and more difficult to ensure compatibility to other smart home systems. The needed investments can unfortunately not be made – especially in regard to the divestment of the general lighting end-consumer business in 2016.

We post updates regularly on our website with updated FAQs.

As always, we will try to answer all your questions which can be addressed via our usual e-mail address lightify@osram.com.

Kind regards

Your LIGHTIFY Team

1 Like

@adamkempenich Maybe since they are shutting down they will release the code for the system? Not sure if that would help, but if so might be worth contacting them to see.

1 Like

I swear, they will go to any length to blame everything pre-Zigbee 3.0 for all of their problems. I remember they stopped letting US users crossgrade from the ZHA to ZLL firmware (to make them usable with Hue, for example) under the promise that it was because they'd be standardizing on Zigbee 3.0. I think their new Smart+ bulbs are Zigbee 3.0, but the implication was certainly not that their plan was to make you need to swap out your hardware for this. And now: they're discontinuing cloud services because it's too hard to support ZLL and ZHA 1.2 and Zigbee 3.0 (not sure what matters on the cloud side for this aside from possible Gateway firmware updates).

This company has long been on my "do not buy" list. This integration (and their competitive prices) almost made me change my mind, but this reasoning has probably cemented their space on that list. :slight_smile: (To be clear, I support any company's decision to do as they wish with their cloud services. This doesn't affect most people who just use them on a local Zigbee hub of their choosing. They just have a bad history of how they rationalize their decisions.) That being said, I assume nothing here should affect this integration unless they do something to brick your existing/working Gateway...

Maybe they'll relinquish the ZLL firmware for the original generation now? :smiley:

3 Likes

I finally got the app working with more than 20 devices. I'll submit an update to GitHub (if I can figure that out). Struggled a bit with the right way to append arrays so they were one-dimensional but once I got past that it was a breeze. Kinda fun to warm up my coding chops--it's been a while.

2 Likes