URC rules (Unsolicited Result Code)

5 thoughts on “URC rules (Unsolicited Result Code)

  1. Hi,

    I would like to know what
    rules apply to the URC (Unsolicited Result Code), that is when they
    can appear and when I can be sure they will not appear in the output
    of the module.

    For example I tested that
    when I send ATD or AT# to the module (without sending CR), the URC
    will not appear, but when I only send AT (without CR) the URC appear.
    Are there any time relations between the moment I start sending
    command to the module and the moment the URC appear (I mean e.g.
    there is some kind of delay)?

    I need to have a good
    parser that can cope with URCs without messing the application.

    BTW, are there any Telit
    examples/libraries to talk with the modules (preferably in C) or do I
    need to write my own from the beginning? If the latter, do you know
    any good examples – what I need is only the communication using the
    IP Easy (simple HTTP GET), but the code must be able to deal with
    errors like lost GSM network or lost GPRS connection.

     

    I’m using GL865-DUAL.

     

    I appreciate any help.

    1. Most URC are controlled (configured) with specific commands, you need to revise them.

       

      The base of any application for/with Telit modules is serial port communications, which are well covered in any platform, then you need to have command/answer processor but that is too close to the application own design, needs to be developed. Of course you can find examples here and there, including in Telit Python samples, finally is your work to make code applicable and trusty.

       

       

      1. Hi,

         

        Most URC are controlled (configured) with specific commands, you need to revise them.

         
        I understand this. But what I would like to know is, can the URC pollute command response?

         

        Suppose I send AT+CGMI<CR> command and in the same time someone calls the module. Can the output look like:

         

        Telit

        RING

        OK

         

        or it will always be:

         

        RING

        Telit

        OK

         

        or

         

        Telit

        OK

        RING

         

        What are the rules here? As I mentioned before, I know that the URC will not come if I have sent part of the command, but this was my experimental observation. I would like to know the exact rules, possibly with timing relations if there exist any.

         

        Thanks in advance.