You need to wait until GPRS Network Registered (NetworkRegistrationState is Registered or Roaming depending on your telco) is printed in your debug stream before you can send data using TCP.
You can’t use those methods directly in the program started method (it will warn you if it blocks for more than 10s).
The radio module (SIM900) can take upwards of 1 minute to power up and register with the network.
Here’s the procedure:
private CellularRadioManager _radioManager;
public void ProgramStarted()
// for a FEZ Cerberus, using Socket 2, must be type "U"
_radioManager = new CellularRadioManager(2)
DebugPrintEnabled = true,
IsHttpModeEnabled = true
// copy the following methods from the examples on CodePlex
private bool SendDataToServer(string post), replacing YOUR_SERVER_ADDRESS_HERE with your server address (name or IP)
private void TcpDisconnect()
private static void DebugPrint(string str)
Also in the SendDataToServer method above, replace
if (data.IndexOf(@ "HTTP/1.1 201 Created") <= -1) with the correct response for your request. This particular test is expecting a 201 response from a web service.
Then use an event handler, say from a button, to call
_radioManager.SendDataToServer("CORRECTLY FORMATTED HTTP REQUEST")
You should then be able to see the HTTP conversation
To get further help, please post your full source code and system configuration (modules, sockets, etc)