23 thoughts on “Diagnose OTAP problems”

    1. I’m not sure of what you mean. But anyway, I don’t think you can.

      The OTAP/Syslog command only enables OTAP logging messages on your local console (whether it’s ASC0, ASC1 or USB). You shouldn’t need to save it anywhere, it’s only useful when your OTAP doesn’t work and you have no idea why. It helps you to :
      – Diagnose wrong OTAP SMS sent
      – Diagnose problems in the actual OTAP process (DNS failure, server connection refused, wrong JAD file, wrong JAR file).

  1. Hey Florent, I know this blog post is quite old now, but I have a semi-related question. I’m rewriting software that runs on the XT65 module and have been testing OTAP recently. I notice the AMS logs this out (just before reboot I think):

    EVENT_STOP received, wrong implementation of MIDlet

    Ever seen this before or have an idea of what it means? Is it problematic? What does my application code need to do to avoid this?

    Not sure if you’ll get this comment, but thanks in advance for your insight.

    1. When the application shutdowns because the chip shutdowns or restarts, the destroyApp method is called. You have 5s to clean everything (like saving the data currently in memory, closing sockets, etc.) and you have to call the notifyDestroy. (ref Java_UserGuid.pdf : 5.7.2)

      So, to solve it, you must properly handle the destroyApp method.

      I have seen this error before and it never created me any problem. So, you shouldn’t worry about this. The only thing you should always avoid is restarting the chip (AT+CFUN=1,1) within the destroyApp method, I’ve seen some people doing it. I don’t think it solves any problem and it totally messes up the OTAP process.

  2. I’m trying to update the software with pdu format but I get this error [OTAP] ERROR: PWD Keywords do not match.

    Do you know why happed?

    Best regards,

  3. t^scfg=Trace/Syslog/OTAP,1
    SYSLOG ENABLED

    [OTAP] Short message: OTAP_IMPNG
    PWD:kiran
    BEARER:GPRS
    APNORNUM:AIRTELGPRS.COM
    JADUR L:http://121.242.113.225/TC65/TestAt.jar
    APPDIR:a:/otap
    START:INSTALL

    [OTAP] SM ID found
    [OTAP] FILEURL = http://121.242.1
    [OTAP] APPDIR = a:/otap
    [OTAP] BEARER = GPRS
    [OTAP] APNORNUM = AIRTELGPRS.COM
    [OTAP] START = install
    [OTAP] Parameters set per AT command:
    [OTAP] JAD File URL: http://121.242.113.225/TC65/TestAt.jad
    [OTAP] App Dir: a:
    [OTAP] Bearer: GPRS
    [OTAP] Apn Or Num: airtelgprs.com
    [OTAP] Net User:
    [OTAP] Net Pwd:
    [OTAP] SM Pwd: kiran
    [OTAP] no sms PID check: 0
    [OTAP] Parameters for current procedure:
    [OTAP] JAD File URL: http://121.242.113.225/TC65/TestAt.jad
    [OTAP] App Dir a:
    [OTAP] Http User:
    [OTAP] Http Pwd:
    [OTAP] Bearer: GPRS
    [OTAP] Apn Or Num: airtelgprs.com
    [OTAP] Net User:
    [OTAP] Net Pwd:
    [OTAP] Dns: 0.0.0.0
    [OTAP] Notify URL:
    [OTAP] no sms PID check: 0
    [OTAP] Try to establish a GPRS connection …
    [OTAP] GPRS connection established.
    [OTAP] Try to get http://121.242.113.225/TC65/TestAt.jad
    [OTAP] Connected.
    [OTAP] Transfer finished.
    [OTAP] Try to get TestAt.jar …
    [OTAP] Reboot now.
    [OTAP] ERROR: HTTP configuration!

    What this mean. where is he problem. ERROR:HTTP Configuration???

    Kiran

  4. [OTAP] no sms PID check: 0
    [OTAP] Try to establish a GPRS connection …
    [OTAP] GPRS connection established.
    [OTAP] Try to get http://121.242.113.225/TC65/TestAt.jar
    [OTAP] Connected.
    [OTAP] Transfer finished.
    [OTAP] JAM status: 900 Success.
    [OTAP] Reboot now.

    Still am unable to find the Jar and JAD files on A:/ (i.e) On Module.
    what will be the problem

    KIran

  5. Is it possible to read the OTAP password from the TC65 with AT^SJOTAP command? If so, any ideas how to improve security so that people who have the chip in hand cannot get the OTAP password from it?

  6. Yes, you’re right. If you have access to one chip that shows the OTAP password and the other parameters (like the server name) are left unconfigured, you could update the program of all the chips.

    In the real world, I don’t think that should be an issue. Because you still have to guess all the numbers, the correct APN settings and hope that nobody finds out what you did. Because I think it’s clearly considered as hacking a system.

    One way of securing your chip could be to define an OTAP SMS password depending on a secret key and the IMEI. In PHP code this would look like this “$otapSmsPass = substr( md5( $key.’-‘.$imei), 0, 8)”.

    But the real solution, is to create deploy a certificate on the chip and sign all the produced code with it. This is the best way to create a really secure product but it takes a little bit of time.

    I think the real risk around OTAP is to get the program that runs the chip. Because reproducing the hardware is quite easy but running a successful software can be quite tricky, if you can steal it, you can save a lot of time. If the program is correctly built, you might just have few days of reverse-engineering and refactoring to do. As the TC65 programs usually do mostly AT Command and API calls, it’s quite easy to do.

  7. hi florent,
    I have problem with OTAP…I dont know where is wrong…this my log in hyperterminal
    AT^SJOTAP=,http://dl.dropbox.com/u/49910711/Modem/Utama.jad,a:,,,gprs,www.xlgprs
    .net,xlgprs,proxl,,,,
    OK
    AT^SJOTAP
    OK
    AT^SCFG=”trace/syslog/OTAP”,”1″
    SYSLOG ENABLED

    [OTAP] ERROR: Network is unavailable!
    [OTAP] Reboot now.

    please, help me out about this error ?

    thx

  8. Starting emulator in execution mode
    =========================================================================
    Starting TC65I emulator for running application. Please wait …
    =========================================================================

    Using following ini file for debugging session:
    “C:\Documents and Settings\Administrator\Application Data\Cinterion\CMTK\TC65I\WM_Debug_config.ini”

    COM port used for “emulator session”: COM3

    Used baud rate for the module “115200 baud”…

    >>> Starting Download of Jar and Jad file… << TC65i
    AT+IPR? -> +IPR: 115200

    Do you know what could be the problem?

  9. Starting emulator in execution mode =========================================================================
    Starting TC65I emulator for running application. Please wait …
    =========================================================================

    Using following ini file for debugging session:
    “C:\Documents and Settings\Administrator\Application Data\Cinterion\CMTK\TC65I\WM_Debug_config.ini”

    COM port used for “emulator session”: COM3

    Used baud rate for the module “115200 baud”…

    >>> Starting Download of Jar and Jad file… <<<

    Downloading "C:\Documents and Settings\Administrator\My Documents\NetBeansProjects\RS232Sample\dist\nbrun51627\RS232Sample.jad"…

    Download aborted, because of:
    Flash Files System of the module is full or
    communication problem to the module or
    …finished
    Module is switched off

  10. I do not have this map:
    C:\Documents and Settings\Administrator\My Documents\NetBeansProjects\RS232Sample\dist\nbrun51627\

    I have:
    -Netbeans 6.0.1 IDE
    -JDK 1.6 (Location: C:\Program Files\Java\jdk1.6.0_20) … javac running normally…
    -TC65 Module Exchange Suite (MES)
    -SiemensMobilityToolkit_3_0_06
    -COM3 port and connections to the modem TC65 (M2M TC65 GPRS TERMINAL)
    AT+GMM -> TC65i
    AT+IPR? -> +IPR: 115200

    Do you know what could be the problem?

  11. Hi Florent,
    I’m using OTAP on a TC65i, FW02.004, with differet providers. The provider “Orange” (Austria) works fine, but with the provider “A1” (Austria) i always get the message “[OTAP] ERROR: Cannot establish connection!” back. In normally use, the http connection works with A1, the parameters for the connection (APN, username, password) are correct.
    Do you know about this problem? My update string for Orange:
    AT^SJOTAP=,http://myserver/myapp.jad,a:,,,gprs,web,fullspeed,web
    Update string for A1:
    AT^SJOTAP=,http://myserver/myapp.jad,a:,,,gprs,a1.net,ppp@a1plus.at,ppp,,,,

    Best regards

Leave a Reply

Your email address will not be published. Required fields are marked *