Nice, but unless the device is mobile/moving: why would you want to disable ADR? Using a worse data rate than required will just eat your battery and maximum allowed daily airtime.
That’s only true for EU868 (and for EU868 only needs to be set manually when using ABP). That may also explain why the device did not receive the downlink, even if the LoRaWAN library supports ADR.
Are you sure 20 is allowed in Australia?
Seeing that you’re using SF7, I don’t understand why TTN would want to sent a regular ADR downlink to change the data rate. I’d assume this was initial ADR then, telling you which channels to use? (But maybe you hardcoded the channels into the device?) Or maybe it’s telling you to decrease the transmission power?
I’d really investigate.
The MQTT /events/down/sent
topic will show the raw payload too.