My current wifi network (and i'm writing this with the help of Windows -.- ) has a special character in it's SSID: "ö", a so-called "umlaut".
If changing the SSID is not an option, how to connect to such a network?
This does not work with Ubuntu 12.04 or Android 2.3.6 or Android 4.0, so I guess it's a general Linux problem. The network adapter is a "Broadcom 4313".
[Update] The problem is, that the network is hidden. Both Android and Ubuntu fail to interpret the manually entered SSID string correctly. However both systems can see the network, if it's not hidden. Ubuntu sees the SSID name correctly, Android fails at the umlaut "ö" and misses the following two characters too, (so instead of "[some characters]örc[some other characters]" it sees "[some characters] [some other characters]").
So it's the combination of hidden SSID and special-character-SSID that causes the problem. [/Update]