Thanks, that makes sense.
I'm not able to change the password on this router, but in the meantime, I've set up another access point with an all numeric password. The duet is able to connect just fine in this case, so it's time to get on with the build…
@dc42:
I'll take a look at the code tomorrow. I did wonder whether it wasn't doing URI decoding, and if that's the case then i think the + character would be a problem too.