Good morning.

Im planning to buy the QUIK Q2687 modul for my project.
After reading some topics on the forum i have downloaded this demo openAT from the wavecom site.

As a long year MCU programmer (C comp.) i dont have praxis with this kind of openAT programming and syntax used in some examples.
I look at all this thru “MCU design” so please take this into notice. I know how to make this on the mcu basis but it looks like that this will not help me much in this situation. Project is stand alone application and it consists of few main things:

  • Incoming call
  • detecting call type ( based on ring duration )
  • switching to input or output

As a example im using telemetry and i must say i have problem with understanding main principles of that example.
I guess that this kind of approach is standard for you but i would need some help on this subject.
I have searched thru documentation and didn’t find much on this topic.

In the example i can see that there is a part where you are defining gpio’s of devices used for application.

When i detect incoming call and when ATA is passed to application, then how to detect call type.
I guess i could run some timer to check time length of the incoming call and switch it then to input or output.
How to define this timer, can i just start to count when call is detected or… ?


Strange, after two days and after 14 views no one can write some example or some comment how to solve, i guess, simple problem.

Is there any other wavecom forum, maybe for wavecom newcommers ?

Yes, it has been noted before that the Wavecom documentation is particularly poor in explaining the concepts behind Open-AT, and how to apply the facilities provided: … .php?t=275 … .php?t=736

Anyhow, Open-AT uses an Event-Driven architecture:

You Subscribe to certain “Services” and, in your subscription, you specify function(s) to be called when certain events (or classes of events) occur - these functions are called handlers.

So, the only time your code actually runs is when one of your handlers is called in response to a subscribed Event.

This naturally tends to lead to implementing your application as a State Machine (obviously, a Finite State Machine, or “FSM”)

This is a very common, but fundamentally flawed idea!

See: … lly+flawed

Hi mr. awneil.

State maschine:
ok, this can help me out.

I have read all the topics but i must say that those topics are mostly question on question, replays. If you look into software part of the forum, you can see that there are few samples and the people are mostly confused how to begin. Those openAT examples ( on the CD ) are for someone who knows to work with openAT.

Is it so hard to write some basic code for some normal functions like incomming call and call duration. Why can not someone write this code and post it on the forum ?

I think im not the only one who is comming from mcu programming part or from some other part, so if someone would need state maschine code ( written in C ) i would glady post it and write some explanation on this.

Im trying to point out that its really hard to understand and learn openAT without some code exchange ( not on the CD ). I can write some rs232 code in C on my way, and 100 of others will have no clue why i have done this like i did. What is then the point of learning or using mcu or other stuff ?

We all want to learn and if you know the openAT, then pass some code and explanation to help us out.


As you know, just posting “some code” is not very useful - what you really need is the clear explanation of what the codes does, and how it works.

Now, one might have hoped that Wavecom would see it in their interest to provide such clear examples and explanations - to encourage people to buy and use their products!

Perhaps you should speak to your distributor - they will be familiar with Wavecom products and Open-AT, and will be able to explain things to you; after all, it is their job to sell you Wavecom products! 8)

Dear mr. awneil,
i have buyed ( im still not sure if i made right choice) the q2687 modul.

The replay from my distributor was: “you can find all help on our online community, we are just selling hardware products”. Funny, isn’t it ?

So now i am at the “online community”, but you are saying “Perhaps you should speak to your distributor”. Maybe its just me, but i think that most of us have no clue what is going on at the wavecom.

Anyway, i did not come here to chat about wavecom support becuse if this is the forum where people can get software help regarding wavecom products, then there must be someone who is willing to help.

I have posted question on the q2678, so if someone knows simple answer, please post it.


Always helpful to give a link: … =3906#3906

Hi Mark,

Please note that Wavecom Developers Forum is a online community and it does not provide on-line support.

“The Wavecom Developers Forum does not replace any existing or future Support Service provided by WAVECOM. Any question(s) related to technical support must continue to be addressed to the existing and appropriate WAVECOM support channel that is in existence for direct and indirect customers of WAVECOM”

You can get more information about the same by referring to this link … ic.php?t=8