You will possibly at some point have to make a Java programme for Cinterion modems TC65 or XT65 where you have to capture data (digital and analog inputs, GPS positions, snaps by the serial port etc.) and store them in an internal file in the flash so that they can later be sent to a central server.

Today I am posting a small Java example to do the second part; the data is sent via FTP to a central server. A long time ago I wrote a few posts with many Java examples including:
http://www.blogelectronica.com/ejemplos-java-j2me-modem-gprs-siemens/
or
http://www.blogelectronica.com/j2me-ftp-cinterion-tc65-xt65-mtx65-tc65t/

In the latter there was an FTP example. This today will elaborate more which will allow you to directly upload a file stored in your modem’s flash memory to a server via FTP. You can download the project and the source code from the example here­.

FTP J2ME

To test it out without any complications, follow the step by step. Create a file called “data.txt” with the data that you want inside and save it in your TC65/XT65 modem’s FLASH memory (in the root directory). After, import the sample project from Eclipse. Open the file FtpHandle.java in which you will see that some variables are read from the file EjemploFTP.jad.

If you open the file EjemploFTP.jad you will see that you have to set the following properties:

gprs-timeout: 20
remote-file: fichero.txt
server: 100.100.100.100
user: MiUserDeFTP
pass: MiPasswordDeFTP
remote-dir: TEST
gprs-apn: movistar.es
gprs-user: MOVISTAR
gprs-dns: 80.58.0.33
gprs-pass: MOVISTAR

Adjust them to your needs, indicating the remote file name (the name that is saved in your FTP server), your FTP server’s IP, the FTP server’s username and password, the folder to store the file (make sure that the folder is created before running the application) and the rest of the parameters that you already know.

Once you have changed the jad properties to your liking, compile the program and run it, you will see how to upload the data.txt file stored within the modem’s FFS to your FTP server. I’m sure that it will be useful occasionally. 

Finally, although it’s a little late (I have been out of action due to a small operation on my eyelids), as this is the first post of the year I would simply like to wish everyone the best for 2010.

I’ll be back with more another day. ;)


Post relacionados:

  1. Locating Difficult Reproduction Failures in TC65/XT65 Cinterion Modems If you develop applications in Java for GPRS TC65, XT65 (or their MTX65 or MTX65+G terminals...
  2. Adding Data to Files from Java with Siemens-Cinterion Modems On several occasions I have been asked how to add...
  3. Using Flash correctly with Cinterion TC65 and XT65 modems On many occasions, we may need to use the FFS (File Flash...
  4. J2ME File Compression in Siemens TC65 GPRS Modems With lots of GPRS modem applications, data needs to be...
  5. Ram and Flash Memory in TC65 and XT65 modems Recently I have been asked a lot about the RAM...








Tags: , , , ,
13 Responses to “Java FTP example for Cinterion GPRS modems TC65 and XT65”
  1. Sergio says:

    Hola, tengo que felicitarte por este post que acabas de subir, no puedes ni llegar a imaginar lo interesante que es esta utilidad para el proyecto que estoy desarrollando. Tengo que reconocer que lo intente pero a la hora de establecer el dialogo con el Servidor FTP siempre me dio un error, que me hizo replantearme e ir por otro camino. Lo dicho, muchas gracias de verdad.

    PD: Funciona perfectamente.

    • blogElectronica says:

      Hola Sergio,

      me alegra que te sea útil el post, pues es la recompensa de cualquier blogger, que su blog sea de interés y utilidad.

      Salu2.

  2. Pua says:

    hola,

    mi agradecimiento tambien

    Salu2

    Pua

  3. Pablo says:

    Hola, me gustaría agradecer tu tiempo y esfuerzo por realizar esta utilidad y este blog en general.

    Un saludo
    Pablo.

  4. Hola
    Gracias, Jose por tu blog
    Estoy intentando ejecutar tu ejemplo “FTP” pero recibo la respuesta: “JAVA ERROR: One or more MIDlet instance(s) could not be created: 139″ en el programa hyperterminal…
    Alguien sabe lo que pasa?
    Gracias, salu2

    • blogElectronica says:

      Hola Daniel,

      creo que no estás escogiendo la plataforma adecuada (el módem correspondiente). También prueba eliminar los archivos temporales. En el Eclipse, menú Project – Clean … y vuelve a compilar el proyecto.

      Salu2

      • Monitor says:

        Hola ami me da este error alguien sabe a que se deba??

        at^sjra=a:/EjemploFTP.jar
        OK

        JAVA ERROR: One or more MIDlet class(es) not found: Ftp

        Al principio decia para la clase main pero le puse Ftp que son las clases que si existen pero de ahi no pasa?

        Alguien sabe a que se deba esto?

  5. Abraham0208 says:

    Hola estoy ejecutando tu ejemplo y tengo una duda, yo estoy usando un servidor ftp local por lo que mi duda es tengo que indicar los datos del DNS, usuario y password???

    al final me marca un error en la linea SISO=0

    y no termina solo dice enviando datos pero no termina

    que puede ser???

    gracias espero tu respuesta

    • blogElectronica says:

      Hola Abraham,

      con los datos que me dices no lo puedo saber. Configura el módem con AT+CMEE=2, así cuando te de ERROR te devolverá un error descriptivo con el problema, sino es dar palos de ciego.

      Salu2

      • Abraham says:

        Hola el error que me regresa es:

        +CME ERROR: requested service option not subscribed

        Sabes a que se deba este error???

        Gracias por tu pronta respuesta

      • Abraham says:

        Hola

        Ya logre hacer el ftp a mi servidor pero ahora tengo una duda, este ejemplo que logre crea un archivo.txt en el servidor pero ahora quiero enviar uno ya existente en a:/fichero.txt al servidor ftp, es la misma instrucción o como le indico que es un archivo ya existente en memoria?

        r=ATC.send(“AT^SISS=1,address,ftpput://usuario:password@” + direccionIP + “:” + puerto + “/fichero.txt;type=a\r”);

        Te mando mi comando donde mando el ftp

        Gracias ojala me puedas ayudar con esta duda y muchas felicidades por tu foro

    • Abraham says:

      Hola mira ya paso el SISO=0 pero ahora me manda este error

      AT^SISI?
      ^SISI: 1,3,0,0,0,0
      OK

      ^SIS: 1, 0, 20, “Connection timed out”

      ^SISR: 1, 2

      Te pongo el SISI para mostrar que supuestamente esta haciendo la conexión y tambien el SICI=1 me regresa

      AT^SICI=1
      ^SICI: 1,2,1,”10.183.16.212″

      una IP ya asignada así como el SISO?

      AT^SISO?
      ^SISO: 0, “”
      ^SISO: 1, “Socket”,”3″,”2″,”0″,”0″,”10.183.16.212:0″,”66.96.146.129:80″
      ^SISO: 2, “”
      ^SISO: 3, “”

      Pero me saca antes de poder hacer la escritura de mi archivo fichero.txt que tengo en mi tc65i.

      Que puede ser amigo??

      Gracias de antemano.

  6.  
Leave a Reply

Puedes publicar un comentario aquí si quieres, pero te recomiendo que uses el nuevo foroElectronica.com para introducir comentarios. Te contestaré más rápido. Recuerda que debes registrarte si no lo estás para publicar un comentario.