Note
Community-maintained fork of nickbreaton/homebridge-modern-forms.
Add support for Modern Forms fans to Homekit using Homebridge.
npm install -g homebridge-modern-forms-ceiling-fansThis repository includes a Docker Compose test rig for Homebridge v2 (homebridge@next) plus a mock Modern Forms fan endpoint.
- Start the environment:
npm run docker:hbv2:up - Watch Homebridge logs:
npm run docker:hbv2:logs - Stop and clean up:
npm run docker:hbv2:down
Notes:
- Homebridge runs with this plugin preinstalled from the local source tree.
- The mock fan listens at
172.28.0.10and responds onPOST /mf. - The test Homebridge config is at
docker/homebridge-v2/config.json. - The build tries
HOMEBRIDGE_VERSIONfirst, then auto-falls back tobeta, thenlatestif the tag does not exist. - To force a specific Homebridge tag/version:
HOMEBRIDGE_VERSION=beta npm run docker:hbv2:upHOMEBRIDGE_VERSION=2.0.0-beta.27 npm run docker:hbv2:up
- Uninstall the archived plugin:
npm uninstall -g homebridge-modern-forms - Install this fork:
npm install -g homebridge-modern-forms-ceiling-fans - Update your Homebridge
config.jsonplatform value from"ModernForms"to"ModernFormsCeilingFan".
- Have Homebridge setup
-
Add any fans you'd like to control to your home network.
-
Add the following to your Homebridge
config.jsonunder platforms.{ "platform": "ModernFormsCeilingFan" } -
Verify your
config.jsonlooks similar to the following.{ "bridge": { "name": "Name", "username": "XX:XX:XX:XX:XX:XX", "port": 00000, "pin": "000-00-000" }, "platforms": [ { "platform": "ModernFormsCeilingFan" } ] } -
You’re all set! Any fans you saw in the Modern Forms app should appear in the Home app automatically.
If any of your fans are not automatically found, try specifiying their IP addresses in the following format.
{
"platform": "ModernFormsCeilingFan",
"fans": [
{
"ip": "192.168.0.10"
},
{
"ip": "192.168.0.11"
}
]
}If you would like to disable the automatic discovery of fans on your network, specify the following option. You will need to specify the IP address of your fans manually as shown above.
{
"platform": "ModernFormsCeilingFan",
"autoDiscover": false
}