Disclaimer: I've never written a line of Groovy in my life until this evening. Spent a few hours hacking away on a Decora Dimmer driver shared a few years back by Jason Xia that looked like it was maybe ported from SmartThings. Did a bit of reading, took a stab at cleaning that up and making a proper "fan" driver for this. Unfortunately the enum that comes with FanControl capability has a few entries in it that don't match up with this 4-speed controller's options.
Anyway, hope it helps someone, or (more likely) that someone comes along and fixes my bugs.