Here's a Matter driver for Big A■■ Fans (firmware 3.3 or greater). There is a fan parent and light child. Matter only exposes a subset of BAF capabilities that are in the phone app. BAFs can have 0, 1, or 2 lights. The driver will work for any configuration. If there are 0 lights the light child will not get created. There is 2 light functionality exposed in the driver for 1&2 light configurations, if you have 1 light the driver will log attempts to use the 2 light functionality.
I created this driver for a couple reasons. 1) curiosity - my helpers Claude and Codex were of major assistance, and 2) the fans have a finicky WiFi connection on my network. I want to see if Matter is any more resilient.
Fan capabilities:
- Speed - BAF fans have 7 discreet speeds. You can control by BAF speed or percent (the percentages get mapped to a BAF speed). Cycle/Up/Down controls available too.
- Auto - the Fan Auto works as configured in the BAF app. Matter exposes Auto for all fans. There are a few configurations that might not have Auto, the function just will not do anything in that case.
- Whoosh - Mimics a variable breeze. Matter specs call it Wind Mode
- Forward/Reverse - BAF recommends to not run your fan in reverse, but you can
- Temperature - for fans that report temperature
- Motion - for fans that report motion.
Light capabilities:
- BAF lights have 16 distinct levels. You can control the lights by those levels or percentage.
- 'On' functionality is configurable to either turn on at previous level or at a fixed configured level.
- The light has start raising/lowering functionality. This functionality might or might not work well in your network environment.
- Auto - the Light Auto functionality works as configured in the BAF phone app. Matter exposes Auto for all lights. There are a few configurations that might not have Auto, the function just will not do anything in that case.
- Color Temperature (CT) - BAF exposes all lights as CT lights even if they do not function as CT lights. The driver knows the difference and will log a message if one tries to change the CT on a fixed CT light. Note that Matter uses mireds internally, so there can be rounding errors when converting to kelvin.
- Light mode. For fans with 2 lights the lights can be controlled in 3 ways - 1) both lights, 2) uplight, and 3) downlight.
A few acknowledgements:
- BAF Matter device insights from @mavrrick58's original 2024 BAF Haiku H/I drivers
- Health check pattern adapted from Matter Advanced Bridge by @kkossev
- Leveled logging pattern adapted from drivers by @jtp10181
Light child:
https://raw.githubusercontent.com/draperw/Hubitat/refs/heads/main/drivers/BAF-Matter/BAF-Light-Matter-Child.groovy
Read Me: