Siemens TC35 gsm and arduino

hye there... i used tc35 board to send the sensor read to phone.. but nothing happen... why it is like that?

the code that i used is...

void setup(){
Serial.begin(9600); 
delay(2500);

Serial.println(“AT”); //To check if GSM module is working
delay(2000);
Serial.println(“AT+CMGF=1?); // set the SMS mode to text
delay(1500);
}
void loop(){

delay(1500);
Serial.print(“AT+CMGS=”);
Serial.print(34,BYTE); //ASCII of “
Serial.print(“+6017xxxxxx2?);
Serial.println(34,BYTE);

delay(1500);
Serial.println(“SMS send....”); //this is the message to be sent
delay(1500);
Serial.println(26,BYTE); //Ascii code of ctrl+z to send the message
while(1);
}

i used tc35 board to send the sensor read to phone..

Where? What part of that code reads a sensor? What part of that code writes that value anywhere?

in here i just pun the bacis gsm code to send sms... im not combine it yet to sensor code. i want to try gsm i success to send the gsm or not..

the wiring is from arduino to gsm i used

tx--> tx rx-->tx gnd-->gnd

the wiring is from arduino to gsm i used

tx--> tx rx-->tx gnd-->gnd

So, both TX and RX on one side (not defined) are connected to TX on the other side (also not defined). How's that working out? Never mind. I think I know.

ooh... sorry2...the connection only 3 wire, the gsm is i power by adapter and arduino is connect to laptop by usb...

arduino --->gsm tx tx rx rx gnd gnd

Perhaps you should have what the Arduino transmits read by the modem, and have what the modem transmits read by the Arduino.

In other words, cross rx → tx and tx → rx.

my ph sensor is long code, that display the ph value to lcd and arduino read the value and send it to GSM. first i need to know the gsm is can send the sms…

i try another code… but same like before…that i get from arduino shield… but in here i used tc35… that is probably same coding that can i used?

// libraries
#include <GSM.h>

#define PINNUMBER "017++++++2"

// initialize the library instance
GSM gsmAccess; // include a 'true' parameter for debug enabled
GSM_SMS sms;

void setup()
{
  // initialize serial communications
  Serial.begin(9600);

  Serial.println("SMS Messages Sender");

  // connection state
  boolean notConnected = true;

  // Start GSM shield
  // If your SIM has PIN, pass it as a parameter of begin() in quotes
  while(notConnected)
  {
    if(gsmAccess.begin(PINNUMBER)==GSM_READY)
      notConnected = false;
    else
    {
      Serial.println("Not connected");
      delay(1000);
    }
  }

  Serial.println("GSM initialized");
}

void loop()
{

  Serial.print("Enter a mobile number: ");
  char remoteNumber[20];  // telephone number to send sms
  readSerial(remoteNumber);
  Serial.println(remoteNumber);

  // sms text
  Serial.print("Now, enter SMS content: ");
  char txtMsg[200];
  readSerial(txtMsg);
  Serial.println("SENDING");
  Serial.println();
  Serial.println("Message:");
  Serial.println(txtMsg);

  // send the message
  sms.beginSMS(remoteNumber);
  sms.print(txtMsg);
  sms.endSMS(); 
  Serial.println("\nCOMPLETE!\n");
}

/*
  Read input serial
 */
int readSerial(char result[])
{
  int i = 0;
  while(1)
  {
    while (Serial.available() > 0)
    {
      char inChar = Serial.read();
      if (inChar == '\n')
      {
        result[i] = '\0';
        Serial.flush();
        return 0;
      }
      if(inChar!='\r')
      {
        result[i] = inChar;
        i++;
      }
    }
  }
}

I have used Siemens TC35 very often and I develop a small library(not finished yet) to handle the modem in a very simple way.
Copy the library to your libraries folder and then try the example.
To send the SMS all you need is this:

#include <GSM.h>
GSM modem;
void setup()
{
Serial.begin(9600);
modem.sendSMS("Hello from Arduino","9XXXXXXXX");
}
void loop()
{
}

Insert the SIM without pin and make sure you are powering the modem with at least 2 amps available in your power source.
If it does not work try to swap the TX, RX pins (TX goes to RX and RX goes to TX)
Also what board did you have?
Does your board expect the connection via RS232 or TTL?

GSMSiemens.zip (6.06 KB)

im used arduino uno and siemens tc35 gsm like link that i attact

http://www.cytron.com.my/viewProduct.php?pcode=ARDUINO-UNO&name=Arduino%20Uno%20Rev3-Main%20Board

http://www.cytron.com.my/viewProduct.php?pcode=GSM-TC35&name=SIEMENS%20TC35%20GSM%20Development%20Board

yes... arduino uno had already had rs232

but this error occur:

sketch_dec09a.ino: In function 'void setup()': sketch_dec09a:6: error: 'class GSM3ShieldV1AccessProvider' has no member named 'sendSMS'

why it is happen?

but this error occur:

sketch_dec09a.ino: In function 'void setup()': sketch_dec09a:6: error: 'class GSM3ShieldV1AccessProvider' has no member named 'sendSMS'

why it is happen?

You have another library conflicting with mine.Remove the library GSM3ShieldV1 from your library folder. Restart the IDE and try again. Since your modem uses a pure RS232 port how are you connecting it with your uno? You know you need a TTL/RS232 converter right? Some Siemens mc35 boards have the TTL Pins in a header pin.See if yours have it(Look to schematic of it) If it have then you could connect those pins directly to your uno TX RX pins without need the RS232/TTL converter

im sorry HugoPT.... i try delete the GSM3ShieldV1AccessProvider from library... but still have error like that.. that i need to delete at other place? or i need to delete all GSM3Shield?

for TTL/RS232 converter, im not sure the GSM is need or not.. i see the description of gsm...

it said " It also come with RS232 interface (DB9) and UART TTL port. Connection to compuiter COM port should be less than 1 minute if you have the serial cable ready. Interface with microcontroller TTL UART will require a proper level shifter, you can use LC04A" did i need to used it?i'm not really understand. please help me...

im sorry HugoPT.... i try delete the GSM3ShieldV1AccessProvider from library... but still have error like that.. that i need to delete at other place? or i need to delete all GSM3Shield?

Yes remove the entire folder from Libraries folder You need a converter, read the manual https://docs.google.com/document/d/1Nmkcos20_gqYwU-mR7i0QlRpGSKiNO6yEP1d-Kf2b2o/edit?pli=1#

UART transmit pin. T1 is connected to on-board MAX232 TTL receive pin. If DB9 (RS232) port is needed, please ensure jumper is connecting both T0 and T1. Please take note that the R0 and T0 pin is 2.65V TTL logic, a proper logic converter is needed to interface to 3.3V or 5V UART pin.

after i delete the folder of GSM in my library like the picture i attach…

the other error occur… this is the error…did i had delete the wrong file?

sketch_dec09a:2: error: ‘GSM’ does not name a type
sketch_dec09a.ino: In function ‘void setup()’:
sketch_dec09a:6: error: ‘modem’ was not declared in this scope

gsm.JPG

i had try delete the file that only name “GSM3ShieldV1AccessProvider” from library like picture…
but the error is still occur

and the GSM and arduino i had connect it with the converter…

After you change the library folder around, you need to restart Arduino IDE

sketch_dec09a:2: error: 'GSM' does not name a type sketch_dec09a.ino: In function 'void setup()': sketch_dec09a:6: error: 'modem' was not declared in this scope

Make sure after remove GSM3ShieldV1 library then put my library inside otherwise it will complain about it and this error will appear

thanks guys… i really appreciate of your reply.

i had upload and run the arduino… the code is success… and i had connect lc40 (converter) like picture i attach…
did i need to add more wire? because at GSM only had 2 wire from converter like pic and from converter 6 wire to arduino like pic…

i had burn the code… at serial monitor appear the code but nothing happen to my phone… :~

lc.JPG

HugoPT i try ask to the cytron product guys, there tell me that… i don’t need to used converter…
there reply like picture that i attach…

with one i need follow?

wiring.JPG

Ok if they say.Did you press the reset button after power the modem?
Power it and to confirm your SIM card is registed try to call to his number and confirm the modem is alive.Some modems after powered wont boot until the user press the reset button.You will see one led blinking on the board confirming registering in SIM operator.There is also a pin named IGN( ignit) to start the modem.In my case this pin must be pulled low in order the modem starts.
So do this:
Upload the example arduino
Wire the modem like they say(with no converter for now)
Power the modem and press the reset button.
Call to the SIM number to confirm it’s registred
The press the reset on the arduino to send the test SMS

HugoPT... i think and exactly try what u write.. but on hyperterminal is appear to calling my phone.. but the modem don't send anything to my phone.. why it is happen?

and one more thing what u do to pin IGN? in my moden have pin IGT.. what i need to do?

after i upload the coding and reset the modem.. nothing happen.. if i reset the arduino in second time, it loop coding second time.. how i need to do? what is the wrong?