Nexus s only gets 2g signal
yesterday my Nexus S stopped getting a network signal.
I took it back to Vodafone who gave me a new sim card. This worked for a bit but I noticed I no longer got a 3G signal.
Now my phone only works when I select "Use only 2G networks" from the mobile network settings.
I've tried taking the sim out and booting back up. I've also tried registering with another network and then switching back to vodafone but I get nothing unless I only use 2g.
The phone is running 4.1.1, I can't even remer being prompted to update the system to jelly bean.
Is a factory reset my only hope?