Pages: [1] 2   Go Down
Author Topic: How to send a sms with a Sony Ericsson phone  (Read 356363 times)
0 Members and 1 Guest are viewing this topic.
Sweden, Malmö
Offline Offline
Full Member
***
Karma: 2
Posts: 200
Rooky
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I have until now not found any good description on how to send a sms with a Sony Ericsson here on Arduino.cc .
Below i share my gathered knowledge and ask other to fill in if they have something to share.
First of i would say that connecting a newer modell of a SonyEricsson phone direct to the TX/RX pins will not work.
It seems as new Sony Ericsson phones need a TX/RX voltage of somewhere about 2,6V to get it working. If you use one of the listed older phones you should get it working with the 5V TX/RX from the Arduino.

T series :
T39, T68, T68i, T230, T250, T610, T630, T650i

K series:
K300, K310, K320i, K500, K510i , K530, K550i, K750i

W Series:
W200, W300, W550, W580, W600, W610, W660, W700, W710, W800, W810, W830, W850, W880, W900, W910

Z Series:
Z250, Z310, Z320, Z500, Z520, Z525, Z530, Z550, Z558, Z600, Z610, Z710, Z750, Z800, Z1010



To understand how to send a sms you need to check this link:
http://www.dreamfabric.com/sms/

For easy conversion of septets into octets use below link, it will save you a lot of time:
http://www.twit88.com/home/utility/sms-pdu-encode-decode
Use 00 for SMSC and then input your number in the receiver area.

Coding example is provided below, reason to why you need to wait 3 seconds between AT commands is that otherwise you will overflow the serial communication and the phone will ignore the commands.

Code:
     Serial.println("AT+CMGF=0"); // Set PDU mode
      delay(3000);
      Serial.println("AT+CMGS=19"); // Number of octets
      delay(3000);
      Serial.print("0011000B916407172132F30000AA05C8329BFD06"); // Sends "Hello" to "00 46707112233"
      delay(3000);
      Serial.write(26);
      delay(3000);


More AT commands can be found here: http://developer.sonyericsson.com/cws/download/1/707/466/1277362028/DW-65054-dg_at_2006--10_r17a.pdf

Have fun  smiley-grin
Logged

0
Offline Offline
Jr. Member
**
Karma: 0
Posts: 76
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

hello,

I have a T250i and I would like to connect it to my arduino to send sms.
The data cable I have is an usb one, coud you explain how I can connect them together ? I suppose I have to remove usb connector, but I don't know the pinout for the phone. Or is it possible to have a breakout connector somewhere ?
Logged

Sweden, Malmö
Offline Offline
Full Member
***
Karma: 2
Posts: 200
Rooky
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Sorry, do not know the pinout of the T250i.
I googled it and found below picture, if it is correct or not i can not say, you need to search for it on the internet.
Yes, you need to remove the usb connector and connect the cables to Arduino.

« Last Edit: December 30, 2010, 11:18:19 am by HULK » Logged

0
Offline Offline
Jr. Member
**
Karma: 0
Posts: 76
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hello,
I ordered a cable and received DCU-60 one.
pinout is like the picture. but I cannot make it to work with arduino

How can I test that the serial connection is well working ? i'm on a mac.

Logged

Sweden, Malmö
Offline Offline
Full Member
***
Karma: 2
Posts: 200
Rooky
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I suggest that you try try to connect your phone to the computer by the usb and then use a hyper terminal. Try to type just "AT" , you should get a "OK" back. Remember to set the baud rate to 9600.
If that works then you need to check your connections with the Arduino.
Maybe switch around TX and RX.
I assume that you have connected both the Arduino and the phone to the same grounding point otherwise it will not work.


Logged

0
Offline Offline
Jr. Member
**
Karma: 0
Posts: 76
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

The cables (2) I have are a Usb to sony connector. I cutted one to connect to the arduino. I still have the other ;-)

I don't know how to make this cable work, because I'm on a mac and I can't find any drivers. Maybe I'll try tomorrow at work on windows.

I also tried to connect to the phone with an empty arduino board .to use only the Serial converter through the serial monitor but I didn't receive any response to AT command.
Logged

0
Offline Offline
Jr. Member
**
Karma: 0
Posts: 76
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I checked again here is the sketch I used to test :
Code:
#include <NewSoftSerial.h>

NewSoftSerial phone(2, 3);

void setup() {
  Serial.begin(9600);
  Serial.println("Arduino has booted.");
  phone.begin(9600);
  Serial.println("phone connected");
  
}

void loop() {
  if (phone.available()) {
      Serial.print((char)phone.read());    
  }
  if (Serial.available()) {
      phone.print((char)Serial.read());
  }
}

I tried swapping rx/tx .... nothing.

I will try on a windows PC tomorrow...
Logged

Sweden, Malmö
Offline Offline
Full Member
***
Karma: 2
Posts: 200
Rooky
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Let me suggest to connect direct to pins 0 and 1 instead.
Then try below code and see if you get a reply OK from the phone.
Code:


void setup() {

  Serial.begin(9600);
  delay(3000);

}

void loop() {

  Serial.println("AT"); //Asking the phone if the connection is working
  delay(3000);

  if (phone.available()) {
      Serial.print((char)phone.read());
  }
  if (Serial.available()) {
      phone.print((char)Serial.read());
  }
}
« Last Edit: January 10, 2011, 08:17:59 pm by HULK » Logged

Sweden, Malmö
Offline Offline
Full Member
***
Karma: 2
Posts: 200
Rooky
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

By the way you need to do some type of serial.read in the loop when not using the software serial library.
Remember to avoid using serial.print to display status text as it will confuse the phone, it can only understand a AT command.
« Last Edit: January 10, 2011, 11:02:21 pm by HULK » Logged

0
Offline Offline
Jr. Member
**
Karma: 0
Posts: 76
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I tried on windows and it is not even recognized by sony suite. So probably it is not possible to use this phone with arduino.
Logged

0
Offline Offline
Newbie
*
Karma: 0
Posts: 9
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hello, I have a K750i. I connected the phone on XP with hyperterminal. I had to choose the right COM port, but i can send AT commands and it response. I use your example and can send a sms  trough hyperterminal. In computer management I see that there are a few com ports when installing the phone. I had to choose the right one in hyperterminal, otherwise it doesn't work.
I then tried to connect the K750i with arduino. But no result. How does the arduino now witch com port to choose on the phone?
I connected the usb cable to the arduino, except the red (5V) because it than want to charge the phone. I don't now if there is a converter of some kind in the usb cable. Maybe it's better to connect straight to the phone?

Thanks!
« Last Edit: January 12, 2011, 01:48:12 am by kristof » Logged

0
Offline Offline
Newbie
*
Karma: 0
Posts: 15
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hello,

Thank you for the message smiley

You said you think it would work all those models, however some don't have serial pins (RX/TX), only USB.

And isn't the DCU-60 cable for USB ? See http://pinouts.ru/CellularPhonesCables/sony_ericsson_dcu60_pinout.shtml.

Am I missing something ?
Logged

Sweden, Malmö
Offline Offline
Full Member
***
Karma: 2
Posts: 200
Rooky
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

klaus,

Try using the USB data pins instead as RX/TX, should be the same.
Logged

Sweden, Malmö
Offline Offline
Full Member
***
Karma: 2
Posts: 200
Rooky
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

kristof,

No need to set a com port for the Arduino, that is only needed for the computer.
Try to switch the TX/RX pins and remember to use pins 0 and 1 on the Arduino.
You could connect the red+ 5V as well to the Arduino, no problem if it charges the phone.

Logged

0
Offline Offline
Newbie
*
Karma: 0
Posts: 15
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Thank you for the answer. It doubt it works if the phones uses USB and not RS-232 to communicate, but I'll try, we'll see.


May I ask you which model you did use ?
« Last Edit: January 18, 2011, 07:03:33 am by klaus » Logged

Pages: [1] 2   Go Up
Jump to: