jstrausd / homebridge-simple-wled

Homebridge Plugin to control WLED LED-Strips
ISC License
63 stars 17 forks source link

Setting effect intensity & speed #17

Open camielverdult opened 3 years ago

camielverdult commented 3 years ago

It would be handy if you would be able to tune the effect speed and intensity from the homekit app. I am not sure if such a thing is possible, but currently the effect speed is set to default which can be very slow for a few effects. If setting speed via homekit is not an option, do you think you could add a config setting to set a higher/lower default speed and intensity?

Thank you for the great work, camiel

jstrausd commented 3 years ago

Sorry for the late response. Yes I can add this option to the plugin in future. Thanks for the idea

Bene2103 commented 2 years ago

Thats exactly what i also wanted, so i've done it my self.

Right now its a bit of a mess on my repo, but if you want to check it out, here you go: https://github.com/Bene2103/homebridge-simple-wled

I havent updated the readme as of right now, but if you want to control intensity install my fork and add "showIntensityControl": true to your config and an extra slider should appear which can control intensity of effects.

@jstrausd: I've a question about your latest changes. Why are there now two redundat files with .js and .ts? I assume one is typescript and the other one javascript. The code is nearly the same in both of the files. Whats the benefit of this?

Another question. I've tried to poll the actual effect, effect speed and also effect intensity and i always get a "cannot read of undefined" if i try to show the values in log. I've done it via "response["data"]["seg"]["ix"]" like you did with brightness but i couldnt figure out how to poll the effect values correctly.

Maybe its a simple fix :-)

Edit: Sorry i didnt see this post was already a year old

jstrausd commented 2 years ago

Which files do you mean? Do you mean the files in src and dist?

About the polling error, the segment attribute is an array, so you have to access it with an index (the first index should be fine). So try accessing it with that.effectIntensity = response["data"]["seg"][0]["ix"];

Bene2103 commented 2 years ago

Thank you i will try it! I will let you know how it goes.

Yes the files in "src" and "dist", they are nearly identical but with different filetypes.