Siemens TC65 manual Sending an AT Command to the Device, the send Method, Data Connections

Page 83

TC65 JAVA User's Guide

Strictly confidential / Released

s

12.1.1.2Sending an AT Command to the Device, the send() Method

An AT command is sent to the device by using the send() method. The AT command is sent as a string which must include the finalizing line feed "\r" or the corresponding line end character.

String response = atc.send(“at+cpin?\r”);

/* method returns when the module returns a response */ System.out.println(response);

Possible response printed to System.out:

+CPIN: READY OK

This send function is a blocking call, which means that the calling thread will be interrupted until the module returns a response. The function returns the response, the result code of the AT command, as a string.

Occasionally it may be infeasible to wait for an AT command that requires some time to be processed, such as at+cops?. There is a second, non-blocking, send function which takes a second parameter in addition to the AT command. This second parameter is a callback instance, ATCommandResponseListener. Any response to the AT command is delivered to the callback instance when it becomes available. The method itself returns immediately. The ATCommandResponseListener and the non-blocking send method are described in Section 12.1.2.

Note: Using the send methods with strings with incorrect AT command syntax will cause errors.

12.1.1.3Data Connections

If a data connection is created with the ATCommand class, for instance with atd, an input stream is opened to receive the data from the connection. Similarly, an output stream can be opened to send data on the connection.

/* Please note that this example would not work unless the module had * been initialized and logged into a network. */

System.out.println("Dialing: ATD" + CALLED_NO); response = atc.send("ATD" + CALLED_NO + "\r"); System.out.println("received: " + response);

if (response.indexOf("CONNECT") >= 0) { try {

//We have a data connection, now we do some streaming...

//IOException will be thrown if any of the Stream methods fail OutputStream dataOut = ATCmd.getDataOutputStream(); InputStream dataIn = ATCmd.getDataInputStream();

//out streaming...

dataOut.write(new String("\n\rHello world\n\r").getBytes()); dataOut.write(new String("\n\rThis data was sent by a Java " +

"MIDlet!\n\r").getBytes()); dataOut.write(new String("Press 'Q' to close the " +

"connection\n\r").getBytes());

// ...and in streaming

System.out.println("Waiting for incoming data, currently " + dataIn.available() + " bytes in buffer.");

rcv = 0;

TC65 JAVA User's Guide_V05

Page 83 of 90

26.09.2005

Image 83
Contents Java Users Guide TC65 Java Users GuideV05 Document Name TC65 Java Users GuideTC65 Java Users Guide September 26Table of Contents 3.3.2 MaintenanceJava Security Compile and Run a Program without a Java IDEDebug Environment Differences from the TC45 Java TutorialTables Sun Java Studio Mobility 6 Switching EmulatorsPreamble Related Documents New solutionOverview Abbreviation Description Terms and AbbreviationsSystem Requirements InstallationInstallation CD SDK and Java Studio ComponentsModule Exchange Suite 1.2 WTKInstalling the Smtk Environment Siemens Mobility Toolkit InstallationInstalling the Standard Development Toolkit Installing Module Exchange Suite MES Installing Sun Java Studio MobilityInstalling Eclipse Installing Borland JBuilder X Upgrades Smtk UninstallSoftware Architecture Software Platform4 ASC1 Interfaces 1 ASC0 Serial DeviceGeneral Purpose I/O 3 DAC/ADCOther Interfaces JVM InterfacesIP Networking MediaADC Data Flow of a Java Application Running on the ModuleModule States Handling Interfaces and Data Service ResourcesState 3 No Java Running, General Purpose I/O and SPI State 1 Default No Java RunningState 4 Default Java Application Active State 2 No Java Running, General Purpose I/O and I2CState 5 Java Application Active, General Purpose I/O and I2C Module State Transitions IP Service MaintenanceCharging Power SavingAutomatic Shutdown Airplane ModeAlarm ShutdownMode Indication after MIDlet Startup Restart after Switch OffSpecial AT Command Set for Java Applications Switching from Data Mode to Command ModeMemory Configuration of Serial InterfaceJava Commands Restrictions Flash File SystemDuration of each loop = 600 s PerformanceJava FrequencyB 1 / frequencyAData Rates on RS-232 API Pin I/OVoice Call in Parallel Plain Serial Interface65% 55% 33% 16% Scenarios with Gprs ConnectionUpload 75% 63% 55% 33%85% 78% 58% 48% Download91% 87% 81% 73% MIDlet Documentation MIDlet Life Cycle MIDletsMIDlet.destroyApp method Here is a sample HelloWorld program Hello World MIDletWindows Based Command Line BasedFile Transfer to Module Module Exchange SuiteOtap Security IssuesOver the Air Provisioning Otap Overview Over The Air Provisioning OtapIntroduction to Otap Otap Parameters Parameters Max. Length AT Keyword SM Install/update DeleteDelete operation Install operationShort Message Format Java File Format Procedures Install/Update Delete Tips and Tricks for Otap Time Out Values and Result CodesSecurity Otap TracerHow To Build Results Compile and Run a Program without a Java IDERun on the Module with Autostart CompileRun on the Module with Manual Start Switch off Autostart Switch on AutostartData Flow of a Java Application in the Debug Environment Debug EnvironmentEmulator Java IDE Sun Java Studio Mobility 6 2004Q3 Switching emulators Projects Compile and run TemplatesExamples Borland JBuilder JBuilderX JDK settingsExamples TC65 Java Users Guide JBuilder2005 JDK settings Integration EclipseEclipse Plug-in installation Eclipse J2ME platform TC65 Java Users GuideV05 26.09.2005 Eclipse Project import ExampleEclipse Example Eclipse Create package Compile and debugBreakpoints Eclipse ConfigurationJava Security Mode Secure Data TransferJ a va C u r i t y c e r t i f i c a t e Asja VasecuritycertificateCreate CA and generate CA Root Certificate Create a Secure Data Transfer Environment Step by StepExecution Control Unsecured modeSecured mode Generate customer root Certificate Change to Secured Mode ConceptBuild binary data for AT command Atsjsec Generate key pairEncoded JAR-File Hash Concept for the Signing the Java MIDletApplication and Data Protection Structure and Description of the Java Security CommandsGeneral structure Structure of the Java Security CommandsHash SHA1 Build Java Security CommandATSJSEC? Send Java Security Command to the ModuleExport X.509 Root Certificate Create Java Security CommandsSign a MIDlet Command switch off module exchange functionalityInstantiation with or without CSD Support Using the AT Command APIClass ATCommand Java TutorialData Connections Sending an AT Command to the Device, the send MethodTC65 Java Users Guide Synchronization ATCommandResponseListener InterfaceNon-blocking ATCommand.send Method Implementation ATCommandListener InterfaceATEvents Registering a Listener with an ATCommand Instance Example Programming the MIDletThreads TC65 Java Users Guide Differences from the TC45
Related manuals
Manual 123 pages 53.3 Kb

TC65 specifications

The Siemens TC65 is a compact and powerful GSM/GPRS module designed for a wide range of mobile communication applications. With its robust features, the TC65 perfectly meets the growing demands for connectivity in various industries, including automotive, telematics, and industrial automation.

A standout feature of the TC65 is its compact size, allowing it to be easily integrated into various devices without compromising on performance. The module supports GSM (Global System for Mobile Communications) and GPRS (General Packet Radio Service), providing reliable and efficient voice and data transmission.

One of the key technologies incorporated in the TC65 is its integrated TCP/IP stack, which allows for seamless internet connectivity and enables application developers to create IoT solutions with ease. This capability is essential for remote monitoring, data logging, and other applications that require continuous data exchange.

The TC65 also boasts extensive multimedia capabilities, including support for SMS, MMS, and voice calls. This makes it suitable for applications that require not only data transmission but also communication features. Additionally, it supports various codecs for voice compression, ensuring high-quality audio in voice applications.

Enhanced security features are another highlight of the TC65. It incorporates comprehensive security protocols to safeguard data transmission, making it suitable for sensitive applications in finance, healthcare, and other critical sectors. The module also includes an integrated SIM application toolbox that supports the development of secure and customizable applications.

For developers, the TC65 offers an easy-to-use software development kit (SDK), simplifying the process of application development. This means that businesses can quickly create and deploy solutions tailored to their specific needs.

The module operates across a wide voltage range and is designed to tolerate challenging environmental conditions, making it ideal for industrial use. It supports various interfaces, including UART, GPIO, and I2C, enabling it to connect with a variety of peripherals and sensors, thus expanding its usability.

In summary, the Siemens TC65 combines compact design, versatile communication capabilities, advanced security features, and developer-friendly resources, making it an excellent choice for anyone looking to implement reliable and sophisticated GSM/GPRS communication in their applications. The TC65 is a valuable asset in the evolving landscape of connected devices and IoT solutions.