Content
|
|
|
Controlling a mobile phone from a PC Java applet
|
Origin
|
I wrote the predecessor of SMS Transceiver to demonstrate on a simple way the reading of SMS via a connected mobile phone on a PC. In November and December 2003 I found out that I had incredible download numbers and I got many emails with questions and suggestions for improvement from all over the world. During the Christmas time 2003 I decided to improve my SMS send and receive programm and renamed it to SMS Transceiver.
SMS Transceiver will be developt in a evolutionary way. This means I have no master plan for the next versions, but if a useful functionality comes up I will include this in one of the next versions.
In summer 2006 I decided to port SMST to the free available Java development environment Eclipse. An other important step was to go from a GUI based SMST to a command line driven SMST. This shows much better the functionality and can be used easier.
|
AT commands to mobile phones
|
It is quite simple to controll a mobile phone via a serial line connection from a PC. The basis are AT commands - similar to the AT commands widely known from Modems. The critical point are the quite difficult codings of the data to and from the mobile phone.
All the AT commands for mobile telephone are specified in the following ETSI standards:
TS 27.005 Data Circuit terminating Equipment (DTE - DCE) interface for Short Message Service (SMS) and Cell Broadcast Service (CBS)
TS 07.07 AT command set for GSM Mobile Equipment (ME)
TS 27.007 AT command set for 3G User Equipment (UE)
TS 23.040 coding of PDUs
The ETSI standards can be downloaded for free at www.etsi.org.
|
AT Examples
|
It is a good practice to test all AT commands to a mobile first with a terminal programm. The following text file shows some Examples (Version 1 from 11. Feb. 2004) for AT commands sended from a PC to a mobile phone and the answer from the mobile phone to this commands (done with a Nokia 6210 in German D1 GSM net). This communication can be easily done with a serial line conncetion to the mobile phone and a simple terminal programm like Hyperterm.
|
use of SMS Transceiver
|
In the meantime SMS Transceiver is used in some productive system in some countries in the world. I have heard from applications to send mass emails with a daily horoscope (10 mobile phones are used in parallel on one PC with SMS Transceiver), remote control of heating (cottage in the alps), daily transfer of sales from kiosk, regular temperature transmission, alarm systems and many applications for data transmission of automated measured values.
|
SMS Transceiver (SMST)
|
Overview
|
SMS Transceiver (short message service transmitter and receiver [transceiver]) is a tool for sending and receiving SMS via a serial or infrared connection between PC and a mobile phone. It establish on the basis of a serial line connection a AT command based communication for sending and receiving SMS and SMS-based e-Mails. It is quite simple and can be easily adopted to most of the needs and operating systems.
The program has to do few with smart cards, but possesses some good routines for sending, receiving, codes and decodes from short messages (SMS), which can be use very well in connection with smart cards. I use a similar program for the world-wide remote control of devices over SMS.
SMS Transceiver uses the javax.comm Service from Sun to transfer data via the serial PC port. Tested with JBuilder 6, JDK 1.3.1 on Windows 2000 and with Nokia 6210 on port COM 1 in German D1 GSM net.
It is also possible to connect a mobile phone via IrDA to SMS Transceiver. If your PC operating system don't support virtual COM ports (e.g. Windows 2000) you can use IrCOMM2k ( www.ircomm2k.de) to establish a virtual COM connection over IrDA. This is tested with COM4 and Siemens SL55, but should be work also with the most other mobile phones with IrDA.
|
Remarks
|
Before starting the programm you have to adopt SMSDIALNO, EMAILDIALNO, EMAILADR to your personal values.
On some GSM networks you have to switch on the SMS to email option first. This could be (on some networks) done with a SMS including the command OPEN to the SMSC.
SMS Transceiver work in PDU mode of the mobile phone not in the quite easy to implement text mode. By the way text mode is quite simple, but there are many mobile phones which don't support it, because its an optional feature
SMS Transceiver works only with data coding scheme = 00 (=standard GSM Alphabet).
Some SMSC uses non ETSI conform codings or unusual coding parameters, this could cause problems with the decoding of the PDUs. A useful tool for PDU analysing is "pduspy.exe" which can encode and decode PDUs.
At the moment there will be no installable version of SMS Transceiver available, because it is quite difficult (or nearly impossible) with Java to build a version which runs without problems on different platforms.
The source code of SMS Transceiver is under GNU General Public License (see www.opensource.org for details).
|
Sources
|
The actual version is SMS Transceiver is Version 11 from 27. August 2006.
SMS Transceiver consist of many files. A description of the diffenent classes and methods is in the Java doc files, which can be downloaded here: SMSTJavaDoc.
SMS Transceiver is available with all Java files and Javadoc files compressed in a ZIP archiv: SMSTV11.
|
Executable
|
ITo run SMST without a development environment you have to install first the Java runtime environment and the driver for the serial connection.
Here is the batch file and the class files of SMST V11 packed in a jar archive. With thisd SMST can be executed without the development tools just by running the batch file.
|
Sources of the old Versions
|
Version 10 is the last SMST version with a graphical user interface and made by JBuilder 6. The release date is 26. August 2004
SMS Transceiver V10 is available with all Java files and Javadoc files compressed in a ZIP archiv: SMSTV10.
|
Similar Projects
|
It is a quite funny thing with open source software because if have no problems to give linka to other projects with similar functionality.
smstool www.isis.de/members/~s.frings/smstools_index.html
freeware package for unix (linux, freebsd, solaris etc) for sending and receiving SMS
JSMS Engine www.jsmsengine.org
Blat www.blat.net
Blat is a Win32 command line freeware mail client that sends eMail using the SMTP or NNTP protocols.
GETMAIL www.qcc.ca/~charlesc/software
getmail is a POP3 mail retriever, with support for both ordinary and domain (or multidrop) POP3 mailboxes.
fetchmail www.catb.org/~esr/fetchmail/index.html
This is a full-featured, robust and very configurable POP2/POP3/APOP/IMAP mail forwarder. It's designed to pick up mail from a mail server host and deliver it just as though it had arrived on your client machine via SMTP.
|
SMS Transceiver for PIC Single-Chip-Microcontrollers (SMST4PIC)
|
|
SMS Transceiver for PIC (SMST4PIC) is a single chip microcontroller based tool for sending SMS via a RS232 serial connection between a PIC and a mobile phone.
|