Nintendo's support on their website often suggests changing your router channel to 1 or 11. I did that after being unable to connect the the shop channel for a week (yet being able to play Mario Kart) and everything works incredibly smoothly now. If that doesn't work, I have good experiences with the Nintendo Wi-Fi USB Connector, which I had to use while at college since the wifi there doesn't reach the dorms, and when it does, is heavily protected.