Thanks @1info for sharing your device driver for Modern Forms fans. We have an outside fan that I am now able to control via Hubitat, and it's pretty awesome.
However, I just bought a Modern Forms fan for the inside, and it appears it doesn't like to be controlled the same way. Sharing info from the logs, here is what it looks like when I switch on the outside fan:
dev:24652020-08-16 15:15:31.820 debugShow Status: [clientId:MF_C89346844FA7, lightOn:false, fanOn:true, lightBrightness:99, fanSpeed:2, fanDirection:forward, rfPairModeActive:false, resetRfPairList:false, factoryReset:false, awayModeEnabled:false, fanSleepTimer:0, lightSleepTimer:0, decommission:false, schedule:, adaptiveLearning:false]
dev:24652020-08-16 15:15:31.803 debugresponse contentType: application/json
dev:24652020-08-16 15:15:31.798 debugresp.data: [clientId:MF_C89346844FA7, lightOn:false, fanOn:true, lightBrightness:99, fanSpeed:2, fanDirection:forward, rfPairModeActive:false, resetRfPairList:false, factoryReset:false, awayModeEnabled:false, fanSleepTimer:0, lightSleepTimer:0, decommission:false, schedule:, adaptiveLearning:false]
dev:24652020-08-16 15:15:31.775 debugContent-Length : 310
dev:24652020-08-16 15:15:31.771 debugContent-Type : application/json
dev:24652020-08-16 15:15:31.490 debugparams: [uri:http://10.9.0.111, path:/mf, contentType:application/json, headers:[something:abc], body:{'fanOn' : true}]
dev:24652020-08-16 15:15:31.479 infoFan IP : 10.9.0.111, command: fanOn, commandValue: true
dev:24652020-08-16 15:15:31.473 debug------- in sendCommand --------
dev:24652020-08-16 15:15:31.459 debugSending Fan On Command
In comparison, I get an error in the logs when attempting to switch on the inside fan:
dev:25932020-08-16 15:20:30.299 errorgroovy.lang.MissingMethodException: No signature of method: user_driver_gjunky_Modern_Form_Fan_705.checkHttpResponse() is applicable for argument types: (org.codehaus.groovy.runtime.GStringImpl, groovyx.net.http.HttpResponseDecorator) values: [error in fanOn, groovyx.net.http.HttpResponseDecorator@a39fe7] on line 71 (FanOn)
dev:25932020-08-16 15:20:29.295 debugsomething went wrong: groovyx.net.http.ResponseParseException: Server Error
dev:25932020-08-16 15:20:29.097 debugparams: [uri:http://10.9.0.127, path:/mf, contentType:application/json, headers:[something:abc], body:{'fanOn' : true}]
dev:25932020-08-16 15:20:29.088 infoFan IP : 10.9.0.127, command: fanOn, commandValue: true
dev:25932020-08-16 15:20:29.083 debug------- in sendCommand --------
dev:25932020-08-16 15:20:29.078 debugSending Fan On Command
The error is probably related to the firmware version: the outside fan is running firmware 01.03.0021. The inside fan is on 02.00.0009.