Open brianchasalow opened 1 year ago
Hello. Regarding the slider to control both lights, I'll look into it. Honestly, I've forgotten how it works in the plugin.
About debugging, you can configure debug settings in the plugin which at their deepest level will show all the communications between the plugin and the fan. Then it's a matter of interpreting the data it spits out.
When the uplight stops responding to the official app, does it still respond to the home app? Do you have the official app installed on multiple devices and are they all unable to control the uplight when the problem arrives?
For starters, adding
"debugLevels": [ ["light",1] ]
to the config for a fan should give you some debug info.
Thanks for the debug log tip! It's super intermittent as to when it stops working - sometimes it'll stop working overnight and be working again by the morning. I'm trying to nail down the set of circumstances when it stops working - but it seems like when the uplight stops working in the official app it stops working in the Home app and vice versa. It would intermittently get into this state for the past several months before I ever tried installing this plugin. That's what I'm trying to debug by interpreting the debug logs.
And yeah- it appears as though nothing is able to control the uplight when it gets into a weird state. I'm in that state now. It is sending messages to the uplight, and the uplight isn't responding in either app. The downlight works fine though.
A couple other things I'm noticing after turning on the debugLevels mode: in the official app, when I'm in "both" mode, it calls setTargetBulb: 0. The plugin never calls this, so it's essentially the equivalent of downlight-only or uplight-only mode.
In downlight only mode, official app (or the plugin, using the downlight slider) calls setTargetBulb : 1 uplight only mode, (or the plugin, using the uplight slider) it calls setTargetBulb: 2
The logs read slightly different for the specific functions in "how" it's modifying the brightness, between the official app and the plugin, though. Let me post the differences momentarily.
uplight only mode, official app: [9/16/2023, 1:59:42 PM] [BigAssFans-i6] dblog light(1/1) Haiku - Up lightOnState value: 1 [9/16/2023, 1:59:42 PM] [BigAssFans-i6] dblog light(1/1) Haiku - setTargetBulb: 2 [9/16/2023, 1:59:42 PM] [BigAssFans-i6] dblog light(1/1) Haiku - update Up Brightness: 100 [9/16/2023, 1:59:42 PM] [BigAssFans-i6] dblog light(1/1) Haiku - Up lightOnState value: 1 [9/16/2023, 1:59:42 PM] [BigAssFans-i6] dblog light(1/1) Haiku - setTargetBulb: 2
uplight only slider in the Home app via the plugin: [9/16/2023, 2:00:20 PM] [BigAssFans-i6] dblog light(1/1) Haiku - Set Characteristic Up Brightness -> 100 [9/16/2023, 2:00:20 PM] [BigAssFans-i6] dblog light(1/1) Haiku - Set Characteristic Up Brightness -> 96 [9/16/2023, 2:00:20 PM] [BigAssFans-i6] dblog light(1/1) Haiku - update Up Brightness: 96 [9/16/2023, 2:00:20 PM] [BigAssFans-i6] dblog light(1/1) Haiku - Up lightOnState value: 1 [9/16/2023, 2:00:20 PM] [BigAssFans-i6] dblog light(1/1) Haiku - setTargetBulb: 2
here's what adjusting the slider in "both" mode in the official app returns: [9/16/2023, 2:05:36 PM] [BigAssFans-i6] dblog light(1/1) Haiku - update Up Brightness: 88 [9/16/2023, 2:05:36 PM] [BigAssFans-i6] dblog light(1/1) Haiku - update Down Brightness: 88 [9/16/2023, 2:05:36 PM] [BigAssFans-i6] dblog light(1/1) Haiku - update Down ColorTemperature: 370 (2700) [9/16/2023, 2:05:36 PM] [BigAssFans-i6] dblog light(1/1) Haiku - Up lightOnState value: 1 [9/16/2023, 2:05:36 PM] [BigAssFans-i6] dblog light(1/1) Haiku - Down lightOnState value: 1 [9/16/2023, 2:05:36 PM] [BigAssFans-i6] dblog light(1/1) Haiku - setTargetBulb: 0
The logs read slightly different for the specific functions in "how" it's modifying the brightness, between the official app and the plugin, though. Let me post the differences momentarily.
The plugin logic moves through different code paths depending if the changes come via the Home app or in the case of the BAF app, the fan itself.
Do you have an IR remote control or a wall control?
Were the logs you sent produced while the fan was in the funked state?
When the plugin log refers to target bulb it's 0 - both lights, 1 - downlight, 2 - uplight.
When you see lightOnState value:
or update ... Brightness
that's in response to the fan telling the plugin the state of the light.
When you see Set Characteristic
that's in response to the Home app issuing a command to the fan.
setTargetBulb
is in response to the fan telling the plugin what the target bulb setting is.
More light related log detail is available by changing the "light",1
to "light",2]
Were the logs you sent produced while the fan was in the funked state?
Yes
Do you have an IR remote control or a wall control?
I think it came with a Bluetooth remote. I don’t generally use it though.
How does the remote know which light you want to operate?
I think if I hold down the light button for a few seconds, I can cycle through modes- both/down only / up only
Did you replace the remote along with the fan?
Yep, whole thing- power supply, even the downtube, and the control board a third time
Generally if my uplight gets into this funky state I can force it to work again for some amount of time by switching the breaker off for 10 mins
Thanks.
Based on the logs, it seems the fan knows when you tell it to operate the uplight via the BAF app since it reports that to the plugin. If BAF is actively trying to debug this, maybe they'd want to know that.
I assume they told you how to reboot the fan using the remote, without flipping the breaker. If you tried that, did it fix it temporarily?
Based on the logs, it seems the fan knows when you tell it to operate the uplight via the BAF app since it reports that to the plugin. If BAF is actively trying to debug this, maybe they'd want to know that.
I haven’t been able to get in touch with someone on the software team, but I will let them know this.
I assume they told you how to reboot the fan using the remote, without flipping the breaker. If you tried that, did it fix it temporarily?
Hmm nope, they didn’t mention rebooting it- I can reset the fan entirely from the remote, without flipping the breaker though. Not sure if that fixes it temporarily but can try.
As a rule of thumb I'd say resetting via software is easier on the hardware than power-cycling. But maybe that's just my bias.
Q: Is there a way to set a fan light control slider to control “both” uplight and downlight? Regarding this... I can replace the two light switches with one that controls whatever light(s) the BAF app has selected. Alternatively I could add a third light switch that controls both. Or I could add a switch that would make either slider control both if the switch is "on".
I'm assuming I could do these things but I won't know the complications until I try. And any of the behaviors we decide on would be enabled with a configuration key/parameter/whatever it's called. Is one of these what you had in mind or should we keep thinking about it?
PS - I might not be responsive again for a while or until tomorrow
Is one of these what you had in mind or should we keep thinking about it?
I imagine it’d be useful to either: A) be able to manually set the mode to both/downlight/uplight, or B) add a third slider that always controls both.
im not particular though - mostly just trying to get it to work so that I can figure out what breaks it! :)
while uplight was working in Home plugin: [9/16/2023, 6:46:03 PM] [BigAssFans-i6] dblog light(1/1) Haiku - Set Characteristic Up Brightness -> 90 [9/16/2023, 6:46:03 PM] [BigAssFans-i6] dblog light(1/1) Haiku - update Up Brightness: 90 [9/16/2023, 6:46:03 PM] [BigAssFans-i6] dblog light(1/1) Haiku - Up lightOnState value: 1 [9/16/2023, 6:46:03 PM] [BigAssFans-i6] dblog light(1/1) Haiku - setTargetBulb: 2
while uplight was working in big ass fans app: [9/16/2023, 6:44:16 PM] [BigAssFans-i6] dblog light(1/1) Haiku - setTargetBulb: 2 [9/16/2023, 6:44:17 PM] [BigAssFans-i6] dblog light(1/1) Haiku - update Up Brightness: 93 [9/16/2023, 6:44:17 PM] [BigAssFans-i6] dblog light(1/1) Haiku - Up lightOnState value: 1 [9/16/2023, 6:44:17 PM] [BigAssFans-i6] dblog light(1/1) Haiku - setTargetBulb: 2
looks pretty identical to me. Sounds like i need to do debugLevel 2 to see if i can parse anything extra out of that?
I'll look into B).
If you set "redflags",1
in the debugLevels array ala
"debugLevels": [ ["light",1], ["redflags",1] ]
it's possible it would show if something weird is being spit out from the fan.
Are you using the BAF app's scheduling features?
Have you considered posting to the BAF subreddit (r/BigAssFans)?
If your uplight is set to 0% and your downlight is at 100% and you select both in BAF app what does the slider indicate? I'm not sure how to handle that if I make a third slider.
I hacked a version of the plugin that tries to implement the "both" slider. If you adjust the slider it should affect both lights. I've been spinning my wheels with an issue where all the controls have the same name - the name of the fan. That's something I thought I resolved 5 months ago. But I don't want to burn more time debugging that aspect before I know if this "both" slider thing works at all for you. Check out this beta and let me know what happens, if you're up for it.
homebridge-i6-bigassfans@0.6.0-beta5
I forgot to mention you need to add
"bothlightsControl": true
to the fan's config.
If your uplight is set to 0% and your downlight is at 100% and you select both in BAF app what does the slider indicate? I'm not sure how to handle that if I make a third slider.
i'm not sure, it stopped working for most of today :-D i recall there are definitely situations where the value slider is set to all-the-way-on but the uplight or the downlight is off for example, when changing modes, in the official app.
and thanks! I'll try those now
just before updating, i saw this redflag btw:
[9/17/2023, 4:32:35 PM] Homebridge v1.6.1 (HAP v0.11.1) (Homebridge 7898) is running on port 51321. [9/17/2023, 4:32:35 PM] [BigAssFans-i6] dblog light(1/1) Haiku - update Down ColorTemperature: 370 (2700) [9/17/2023, 4:32:35 PM] [BigAssFans-i6] dblog light(1/1) Haiku - Up lightOnState value: 0 [9/17/2023, 4:32:35 PM] [BigAssFans-i6] dblog light(1/1) Haiku - Down lightOnState value: 0 [9/17/2023, 4:32:35 PM] [BigAssFans-i6] dblog light(1/1) Haiku - setTargetBulb: 0 [9/17/2023, 4:32:35 PM] [BigAssFans-i6] dblog progress(0/0) Haiku - product type: Haiku H/I Series (0x48, 0x61, 0x69, 0x6b, 0x75, 0x20, 0x48, 0x2f, 0x49, 0x20, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73) [9/17/2023, 4:32:35 PM] [BigAssFans-i6] dblog progress(0/0) Haiku - firmware: 3.2.1 [9/17/2023, 4:32:35 PM] [BigAssFans-i6] dblog redflags(1/1) Haiku - top level message, expected field "2", got field "0" [9/17/2023, 4:32:35 PM] [BigAssFans-i6] dblog light(1/1) Haiku - Get Characteristic Down ColorTemperature -> 370 (2700) [9/17/2023, 4:33:03 PM] [BigAssFans-i6] dblog light(1/1) Haiku - update Down ColorTemperature: 370 (2700) [9/17/2023, 4:33:03 PM] [BigAssFans-i6] dblog light(1/1) Haiku - Up lightOnState value: 0 [9/17/2023, 4:33:03 PM] [BigAssFans-i6] dblog light(1/1) Haiku - Down lightOnState value: 0 [9/17/2023, 4:33:03 PM] [BigAssFans-i6] dblog light(1/1) Haiku - setTargetBulb: 0
Looks like the new “both” slider sets the mode to “downlight only” mode instead of “both” mode.
Are you using the BAF app's scheduling features?
Have you considered posting to the BAF subreddit (r/BigAssFans)?
Not using scheduling and haven’t posted there yet- but getting the fans to spit out debug info / errors is the furthest I’ve gotten so far, so that’s good…
just before updating, i saw this redflag btw:
I see that occasionally also, I think it's an artifact associated with the plugin starting up and is probably harmless. Nevertheless, I should look into it.
Looks like the new “both” slider sets the mode to “downlight only” mode instead of “both” mode.
The "both" slider is implemented by calling the routines for each of the two real sliders. I..e,
So I would expect the logs to show setTargetBulb: 2 and then setTargetBulb: 1
Just tried the “both” slider after the uplight was working for a bit- and it just makes the uplight flash on and off but then it ultimately remain off after I stop dragging the slider. I’ll try to grab some log output shortly.
is there a way to call setTargetBulb:0? I know you mentioned that’s the fan telling us what its state is, but there must be some “both” command we’re missing here.
official app: when in downlight mode, and just switching to "both" mode: [9/18/2023, 11:13:25 PM] [BigAssFans-i6] dblog light(2/2) Haiku - inserted setTargetBulb at start of funStack [9/18/2023, 11:13:25 PM] [BigAssFans-i6] dblog light(1/2) Haiku - setTargetBulb: 0 [9/18/2023, 11:13:25 PM] [BigAssFans-i6] dblog light(1/2) Haiku - lightBrightness: 100, targetBulb: 0 [9/18/2023, 11:13:25 PM] [BigAssFans-i6] dblog light(1/2) Haiku - update Up Brightness: 100 [9/18/2023, 11:13:25 PM] [BigAssFans-i6] dblog light(1/2) Haiku - update Down Brightness: 100 [9/18/2023, 11:13:25 PM] [BigAssFans-i6] dblog light(1/2) Haiku - update Down ColorTemperature: 370 (2700) [9/18/2023, 11:13:25 PM] [BigAssFans-i6] dblog light(1/2) Haiku - Up lightOnState value: 1 [9/18/2023, 11:13:25 PM] [BigAssFans-i6] dblog light(1/2) Haiku - Down lightOnState value: 1 [9/18/2023, 11:13:25 PM] [BigAssFans-i6] dblog light(1/2) Haiku - setTargetBulb: 0
official app, dragging slider when in "both" mode: [9/18/2023, 11:17:07 PM] [BigAssFans-i6] dblog light(2/2) Haiku - inserted setTargetBulb at start of funStack [9/18/2023, 11:17:07 PM] [BigAssFans-i6] dblog light(1/2) Haiku - setTargetBulb: 0 [9/18/2023, 11:17:07 PM] [BigAssFans-i6] dblog light(1/2) Haiku - lightBrightness: 60, targetBulb: 0 [9/18/2023, 11:17:07 PM] [BigAssFans-i6] dblog light(1/2) Haiku - update Up Brightness: 60 [9/18/2023, 11:17:07 PM] [BigAssFans-i6] dblog light(1/2) Haiku - update Down Brightness: 60 [9/18/2023, 11:17:07 PM] [BigAssFans-i6] dblog light(1/2) Haiku - update Down ColorTemperature: 370 (2700) [9/18/2023, 11:17:07 PM] [BigAssFans-i6] dblog light(1/2) Haiku - Up lightOnState value: 1 [9/18/2023, 11:17:07 PM] [BigAssFans-i6] dblog light(1/2) Haiku - Down lightOnState value: 1 [9/18/2023, 11:17:07 PM] [BigAssFans-i6] dblog light(1/2) Haiku - setTargetBulb: 0
home app plugin that isn't working right: [9/18/2023, 11:15:17 PM] [BigAssFans-i6] dblog light(1/2) Haiku - Set Characteristic Up Brightness -> 40 [9/18/2023, 11:15:17 PM] [BigAssFans-i6] dblog light(1/2) Haiku - Set Characteristic Down Brightness -> 40 [9/18/2023, 11:15:17 PM] [BigAssFans-i6] dblog light(2/2) Haiku - inserted setTargetBulb at start of funStack [9/18/2023, 11:15:17 PM] [BigAssFans-i6] dblog light(1/2) Haiku - setTargetBulb: 2 [9/18/2023, 11:15:17 PM] [BigAssFans-i6] dblog light(1/2) Haiku - lightBrightness: 60, targetBulb: 2 [9/18/2023, 11:15:17 PM] [BigAssFans-i6] dblog light(1/2) Haiku - update Up Brightness: 60 [9/18/2023, 11:15:17 PM] [BigAssFans-i6] dblog light(1/2) Haiku - Up lightOnState value: 1 [9/18/2023, 11:15:17 PM] [BigAssFans-i6] dblog light(1/2) Haiku - setTargetBulb: 2 [9/18/2023, 11:15:17 PM] [BigAssFans-i6] dblog light(2/2) Haiku - inserted setTargetBulb at start of funStack [9/18/2023, 11:15:17 PM] [BigAssFans-i6] dblog light(1/2) Haiku - setTargetBulb: 2 [9/18/2023, 11:15:17 PM] [BigAssFans-i6] dblog light(1/2) Haiku - lightBrightness: 40, targetBulb: 2 [9/18/2023, 11:15:17 PM] [BigAssFans-i6] dblog light(1/2) Haiku - update Up Brightness: 40 [9/18/2023, 11:15:17 PM] [BigAssFans-i6] dblog light(1/2) Haiku - Up lightOnState value: 1 [9/18/2023, 11:15:17 PM] [BigAssFans-i6] dblog light(1/2) Haiku - setTargetBulb: 2 [9/18/2023, 11:15:17 PM] [BigAssFans-i6] dblog light(2/2) Haiku - inserted setTargetBulb at start of funStack [9/18/2023, 11:15:17 PM] [BigAssFans-i6] dblog light(1/2) Haiku - setTargetBulb: 1 [9/18/2023, 11:15:17 PM] [BigAssFans-i6] dblog light(1/2) Haiku - lightBrightness: 60, targetBulb: 1 [9/18/2023, 11:15:17 PM] [BigAssFans-i6] dblog light(1/2) Haiku - update Down Brightness: 60 [9/18/2023, 11:15:17 PM] [BigAssFans-i6] dblog light(1/2) Haiku - update Down ColorTemperature: 370 (2700) [9/18/2023, 11:15:17 PM] [BigAssFans-i6] dblog light(1/2) Haiku - Down lightOnState value: 1 [9/18/2023, 11:15:17 PM] [BigAssFans-i6] dblog light(1/2) Haiku - setTargetBulb: 1 [9/18/2023, 11:15:17 PM] [BigAssFans-i6] dblog light(2/2) Haiku - inserted setTargetBulb at start of funStack [9/18/2023, 11:15:17 PM] [BigAssFans-i6] dblog light(1/2) Haiku - setTargetBulb: 1 [9/18/2023, 11:15:17 PM] [BigAssFans-i6] dblog light(1/2) Haiku - lightBrightness: 40, targetBulb: 1 [9/18/2023, 11:15:17 PM] [BigAssFans-i6] dblog light(1/2) Haiku - update Down Brightness: 40 [9/18/2023, 11:15:17 PM] [BigAssFans-i6] dblog light(1/2) Haiku - update Down ColorTemperature: 370 (2700) [9/18/2023, 11:15:17 PM] [BigAssFans-i6] dblog light(1/2) Haiku - Down lightOnState value: 1 [9/18/2023, 11:15:17 PM] [BigAssFans-i6] dblog light(1/2) Haiku - setTargetBulb: 1
See if homebridge-i6-bigassfans@0.6.0-beta6
works any better.
It explicitly tells the fan to target both bulbs.
I have same issue I believe. When I install all this and try to use the light function it totally kills it for everything, my hardwired remote and my bluetooth remote both don't work for just the light. I have to flip the breaker to get it working again. Really weird. It also still assumes I have a downlight which I don't, only an uplight, I put in the false configuration downlightEquipped false and still detects one but not there. Seems this could be the problem but maybe not. Fan works all the time with this but once I change the light with it once, it works but then never works again for everything and I have to flip the breaker. Does the beta fix all of this? Anyway to just disable the light functions completely?
The Beta might fix it. Give it try and let me know please - homebridge-i6-bigassfans@0.6.0-beta6
.
Works so far, many thanks and for the fast response too.
Works so far, many thanks and for the fast response too.
It didn't work for me, was still having problems in both the BAF app and homebridge, and the homebridge integration was causing weird network speed issues on my PC so I uninstalled it :-(
Big Ass Fans has basically said they will refund the fan if I return it... since I've still to this day been unable to get it to work as advertised... they're still debugging it apparently though?
I have the Haiku with the upper and lower lights and am experiencing the same problem...If I turn on lower light and then try to turn on upper light in Home app it turns the lower light off. The same happens if I try to do it in reverse order. Running Beta7
Are you using homebridge-i6-bigassfans@0.6.0-beta6
?
homebridge-i6-bigassfans v0.6.0-beta7....I will add that the BAF app on my iPhone works correctly so the fan is functioning correctly.
My bad, I missed that you were running beta7.
Can you add this debug setting to the config.json file for your fan and restart?
"debugLevels": [ [ "redflags", 1 ], [ "network", 11 ] ]
Then turn on the lower light and then try to turn on upper light in the Home app.
It'll output the raw messages which will contain private info like MAC address, IP, wifi network name, etc. You can send the output to turbo_titled_0w@icloud.com or post it here and I'll look into it.
Thanks.
Oh, and turn on debug for homebridge with the "-D" command line option when you restart or from Homebridge UI Startup Options.
Can you please assist where in the JSON I should place the debug comment...
{ "fans": [ { "name": "Kitchen Fan", "ip": "192.168.4.25", "mac": "94:e6:86:ca:d9:6c", "fanModel": "Haiku H/I Series", "showWhooshSwitch": false, "showFanAutoSwitch": true, "showLightAutoSwitch": true, "showDimToWarmSwitch": false, "showEcoModeSwitch": false, "disableDirectionControl": false } ], "platform": "BigAssFans-i6", "_bridge": { "username": "0E:F4:53:5A:74:9D", "port": 57752 } }
Sure.
"fans": [ { "name": "Kitchen Fan", "ip": "192.168.4.25", "mac": "94:e6:86:ca:d9:6c", "fanModel": "Haiku H/I Series", "showWhooshSwitch": false, "showFanAutoSwitch": true, "showLightAutoSwitch": true, "showDimToWarmSwitch": false, "showEcoModeSwitch": false, "disableDirectionControl": false , "debugLevels": [ [ "redflags", 1 ], [ "network", 11 ] ] } ],
Log sent to Email
I received the log, thank you.
Hello. One interesting issue I see in the log is the plugin sometimes receives a message that it doesn't correctly handle.
For instance, line 72,
[1/12/2024, 2:41:44 PM] [homebridge-i6-bigassfans] dblog network(11/11) Kitchen Fan - raw (unstuffed) chunks[0]: x.
That 'x' is an anomaly.
Can you please change the network debug level from 11 to 13 and rerun the excercise and send the new log?
Also, are you using Schedules? The plugin has been known to get tripped up parsing messages that have to do with Schedules.
Logs sent....No I do not use schedules. Thanks!!
Hi. The latest logs tell me some messages from your fan are being fragmented. The plugin assumes each buffer delivered over the fan's socket connection will have one or more complete messages. But that seems to be a bad assumption, at least in the case of your setup.
I'm assuming you're not expert at network protocol fiddling so I'll need to do a bit of work on my end to fix this problem, if this is the root cause of your issue and not a red herring.
I'll have a new beta for to try at some point, but I don't know when that will be - I hope soon.
homebridge-i6-bigassfans@0.6.0-beta8
addresses the anomalies in the log file. I don't know if it will resolve the issue but if it doesn't, please reproduce it again and send the logs at the same levels as last time. At your convenience, of course.
Thanks.
I have a new Haiku fan with both an uplight and a downlight. Both show up in HomeKit - but when I adjust the uplight brightness slider, it turns off the downlight, and vice versa. This changes the “mode” in the official app to “downlight only” or “uplight only” mode.
Q: Is there a way to set a fan light control slider to control “both” uplight and downlight?
Some background: I’ve been having some intermittent uplight issues with my haiku fan for several months, ever since I bought it. I installed the homebridge plugin to see if I could figure out what set of circumstances cause the uplight to no longer respond to control in the official iOS app. I’ve replaced the entire fan twice through Big Ass Fans customer support. When my fan gets into this funky state, are there any debug things I can run to see why my uplight is not responding to commands? My downlight always works.