xref: /btstack/test/hfp/test_sequences.c (revision ea6ff7d62adba7e8db64c60cfcd7b3ac44558bd4)
1 /*
2  * Copyright (C) 2014 BlueKitchen GmbH
3  *
4  * Redistribution and use in source and binary forms, with or without
5  * modification, are permitted provided that the following conditions
6  * are met:
7  *
8  * 1. Redistributions of source code must retain the above copyright
9  *    notice, this list of conditions and the following disclaimer.
10  * 2. Redistributions in binary form must reproduce the above copyright
11  *    notice, this list of conditions and the following disclaimer in the
12  *    documentation and/or other materials provided with the distribution.
13  * 3. Neither the name of the copyright holders nor the names of
14  *    contributors may be used to endorse or promote products derived
15  *    from this software without specific prior written permission.
16  * 4. Any redistribution, use, or modification is done solely for
17  *    personal benefit and not for any commercial purpose or for
18  *    monetary gain.
19  *
20  * THIS SOFTWARE IS PROVIDED BY BLUEKITCHEN GMBH AND CONTRIBUTORS
21  * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
22  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
23  * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL MATTHIAS
24  * RINGWALD OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
25  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
26  * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
27  * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
28  * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
29  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
30  * THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
31  * SUCH DAMAGE.
32  *
33  * Please inquire about commercial licensing options at
34  * [email protected]
35  *
36  */
37 
38 // *****************************************************************************
39 //
40 // HFP Test Sequences
41 //
42 // *****************************************************************************
43 
44 #include <stdint.h>
45 #include <stdio.h>
46 #include <stdlib.h>
47 #include <string.h>
48 
49 #include "test_sequences.h"
50 
51 
52 #define TEST_SEQUENCE(test_sequence) { (char *)#test_sequence, (char**)test_sequence, sizeof(test_sequence) / sizeof(char *)}
53 
54 /* Service Level Connection (slc) common commands */
55 const char * slc_cmds_test1[] = {
56     "AT+BAC=1,3",
57     "OK"
58 };
59 
60 hfp_test_item_t slc_cmds_tests[] = {
61     TEST_SEQUENCE(slc_cmds_test1)
62 };
63 
64 /* Codecs Connection (cc) test sequences */
65 const char * cc_test1[] = {
66     "AT+BCC",
67     "OK",
68     "+BCS:1",
69     "AT+BCS=1",
70     "OK"
71 };
72 
73 const char * cc_test2[] = {
74     "AT+BAC=1,2",
75     "OK",
76     "AT+BCC",
77     "OK",
78     "+BCS:1",
79     "AT+BCS=1",
80     "OK"
81 };
82 
83 
84 const char * cc_test3[] = {
85     "AT+BAC=1,2",
86     "OK",
87     "AT+BCC",
88     "OK",
89     "+BCS:1",
90     "AT+BAC=2,3",
91     "OK",
92     "+BCS:3",
93     "AT+BCS=3",
94     "OK"
95 };
96 
97 const char * cc_test4[] = {
98     "AT+BCC",
99     "OK",
100     "+BCS:1",
101     "AT+BAC=2,3",
102     "OK",
103     "+BCS:3",
104     "AT+BCS=3",
105     "OK"
106 };
107 
108 
109 hfp_test_item_t cc_tests[] = {
110     TEST_SEQUENCE(cc_test1),
111     TEST_SEQUENCE(cc_test2),
112     TEST_SEQUENCE(cc_test3),
113     TEST_SEQUENCE(cc_test4)
114 };
115 
116 /* Incoming call sequence */
117 const char * ic_test1[] = {
118     "+CIEV:3,1",
119     "BCS:1",
120     "AT+BCS=1",
121     "OK"
122 };
123 
124 const char * ic_alert_test1[] = {
125     "ATA",
126     "OK",
127     "+CIEV:2,1", // call = 1
128     "+CIEV:3,0",
129 };
130 
131 const char * ic_ag_terminates_call[] = {
132     // AG terminates call
133     "+CIEV:2,0"
134 };
135 
136 const char * ic_hf_terminates_call[] = {
137     // HF terminates call
138     "AT+CHUP",
139     "OK",
140     "+CIEV:2,0"
141 };
142 
143 hfp_test_item_t ic_tests[] = {
144     TEST_SEQUENCE(ic_test1)
145 };
146 
147 /* PTS test sequences - SLC Group */
148 
149 const char * TC_AG_SLC_BV_01_C[] = {
150     "USER:a",
151     "AT+BRSF=127" ,
152     "+BRSF:4079" ,
153     "OK" ,
154     "AT+CIND=?" ,
155     "+CIND:(\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0,3)),(\"battchg\",(0,5)),(\"signal\",(0,5)),(\"roam\",(0,1)),(\"callheld\",(0,2))" ,
156     "OK" ,
157     "AT+CIND?" ,
158     "+CIND:1,0,0,3,5,0,0" ,
159     "OK" ,
160     "AT+CMER=3,0,0,1" ,
161     "OK" ,
162     "AT+CHLD=?" ,
163     "+CHLD:(1,1x,2,2x,3)" ,
164     "OK" ,
165     "AT+VGS=9" ,
166     "OK" ,
167     "AT+VGM=9" ,
168     "OK" ,
169     "AT+CLIP=1" ,
170     "OK" ,
171     "AT+CCWA=1" ,
172     "OK" ,
173     "AT+CMEE=1" ,
174     "OK"
175 };
176 
177 const char * TC_AG_SLC_BV_02_C[] = {
178     "USER:a",
179     "AT+BRSF=127" ,
180     "+BRSF:4079" ,
181     "OK" ,
182     "AT+CIND=?" ,
183     "+CIND:(\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0,3)),(\"battchg\",(0,5)),(\"signal\",(0,5)),(\"roam\",(0,1)),(\"callheld\",(0,2))" ,
184     "OK" ,
185     "AT+CIND?" ,
186     "+CIND:1,0,0,3,5,0,0" ,
187     "OK" ,
188     "AT+CMER=3,0,0,1" ,
189     "OK" ,
190     "AT+CHLD=?" ,
191     "+CHLD:(1,1x,2,2x,3)" ,
192     "OK" ,
193     "AT+VGS=9" ,
194     "OK" ,
195     "AT+VGM=9" ,
196     "OK" ,
197     "AT+CLIP=1" ,
198     "OK" ,
199     "AT+CCWA=1" ,
200     "OK" ,
201     "AT+CMEE=1" ,
202     "OK"
203 };
204 
205 const char * TC_AG_SLC_BV_03_C[] = {
206     "USER:a",
207     "AT+BRSF=125" ,
208     "+BRSF:4079" ,
209     "OK" ,
210     "AT+CIND=?" ,
211     "+CIND:(\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0,3)),(\"battchg\",(0,5)),(\"signal\",(0,5)),(\"roam\",(0,1)),(\"callheld\",(0,2))" ,
212     "OK" ,
213     "AT+CIND?" ,
214     "+CIND:1,0,0,3,5,0,0" ,
215     "OK" ,
216     "AT+CMER=3,0,0,1" ,
217     "OK" ,
218     "AT+VGS=9" ,
219     "OK" ,
220     "AT+VGM=9" ,
221     "OK" ,
222     "AT+CLIP=1" ,
223     "OK" ,
224     "AT+CCWA=1" ,
225     "OK" ,
226     "AT+CMEE=1" ,
227     "OK"
228 };
229 
230 const char * TC_AG_SLC_BV_04_C[] = {
231     "USER:a",
232     "AT+BRSF=125" ,
233     "+BRSF:4079" ,
234     "OK" ,
235     "AT+CIND=?" ,
236     "+CIND:(\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0,3)),(\"battchg\",(0,5)),(\"signal\",(0,5)),(\"roam\",(0,1)),(\"callheld\",(0,2))" ,
237     "OK" ,
238     "AT+CIND?" ,
239     "+CIND:1,0,0,3,5,0,0" ,
240     "OK" ,
241     "AT+CMER=3,0,0,1" ,
242     "OK" ,
243     "AT+VGS=9" ,
244     "OK" ,
245     "AT+VGM=9" ,
246     "OK" ,
247     "AT+CLIP=1" ,
248     "OK" ,
249     "AT+CCWA=1" ,
250     "OK" ,
251     "AT+CMEE=1" ,
252     "OK"
253 };
254 
255 const char * TC_AG_SLC_BV_05_I[] = {
256     "USER:a",
257     "AT+BRSF=255" ,
258     "+BRSF:4079" ,
259     "OK" ,
260     "AT+BAC=1" ,
261     "OK" ,
262     "AT+CIND=?" ,
263     "+CIND:(\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0,3)),(\"battchg\",(0,5)),(\"signal\",(0,5)),(\"roam\",(0,1)),(\"callheld\",(0,2))" ,
264     "OK" ,
265     "AT+CIND?" ,
266     "+CIND:1,0,0,3,5,0,0" ,
267     "OK" ,
268     "AT+CMER=3,0,0,1" ,
269     "OK" ,
270     "AT+CHLD=?" ,
271     "+CHLD:(1,1x,2,2x,3)" ,
272     "OK" ,
273     "AT+VGS=9" ,
274     "OK" ,
275     "AT+VGM=9" ,
276     "OK" ,
277     "AT+CLIP=1" ,
278     "OK" ,
279     "AT+CCWA=1" ,
280     "OK" ,
281     "AT+CMEE=1" ,
282     "OK"
283 };
284 
285 const char * TC_AG_SLC_BV_06_I[] = {
286     "USER:a",
287     "AT+BRSF=255" ,
288     "+BRSF:4079" ,
289     "OK" ,
290     "AT+BAC=1" ,
291     "OK" ,
292     "AT+CIND=?" ,
293     "+CIND:(\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0,3)),(\"battchg\",(0,5)),(\"signal\",(0,5)),(\"roam\",(0,1)),(\"callheld\",(0,2))" ,
294     "OK" ,
295     "AT+CIND?" ,
296     "+CIND:1,0,0,3,5,0,0" ,
297     "OK" ,
298     "AT+CMER=3,0,0,1" ,
299     "OK" ,
300     "AT+CHLD=?" ,
301     "+CHLD:(1,1x,2,2x,3)" ,
302     "OK" ,
303     "AT+VGS=9" ,
304     "OK" ,
305     "AT+VGM=9" ,
306     "OK" ,
307     "AT+CLIP=1" ,
308     "OK" ,
309     "AT+CCWA=1" ,
310     "OK" ,
311     "AT+CMEE=1" ,
312     "OK"
313 };
314 
315 const char * TC_AG_SLC_BV_07_I[] = {
316     "USER:a",
317     "AT+BRSF=127" ,
318     "+BRSF:4079" ,
319     "OK" ,
320     "AT+CIND=?" ,
321     "+CIND:(\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0,3)),(\"battchg\",(0,5)),(\"signal\",(0,5)),(\"roam\",(0,1)),(\"callheld\",(0,2))" ,
322     "OK" ,
323     "AT+CIND?" ,
324     "+CIND:1,0,0,3,5,0,0" ,
325     "OK" ,
326     "AT+CMER=3,0,0,1" ,
327     "OK" ,
328     "AT+CHLD=?" ,
329     "+CHLD:(1,1x,2,2x,3)" ,
330     "OK" ,
331     "AT+VGS=9" ,
332     "OK" ,
333     "AT+VGM=9" ,
334     "OK" ,
335     "AT+CLIP=1" ,
336     "OK" ,
337     "AT+CCWA=1" ,
338     "OK" ,
339     "AT+CMEE=1" ,
340     "OK"
341 };
342 
343 const char * TC_AG_SLC_BV_09_I[] = {
344     "USER:a",
345     "AT+BRSF=895" ,
346     "+BRSF:4079" ,
347     "OK" ,
348     "AT+CIND=?" ,
349     "+CIND:(\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0,3)),(\"battchg\",(0,5)),(\"signal\",(0,5)),(\"roam\",(0,1)),(\"callheld\",(0,2))" ,
350     "OK" ,
351     "AT+CIND?" ,
352     "+CIND:1,0,0,3,5,0,0" ,
353     "OK" ,
354     "AT+CMER=3,0,0,1" ,
355     "OK" ,
356     "AT+CHLD=?" ,
357     "+CHLD:(1,1x,2,2x,3)" ,
358     "OK" ,
359     "AT+BIND=1,99" ,
360     "OK" ,
361     "AT+BIND=?" ,
362     "+BIND:(1,2)" ,
363     "OK" ,
364     "AT+BIND?" ,
365     "+BIND:1,1",
366     "+BIND:2,1" ,
367     "OK" ,
368     "AT+VGS=9" ,
369     "OK" ,
370     "AT+VGM=9" ,
371     "OK" ,
372     "AT+CLIP=1" ,
373     "OK" ,
374     "AT+CCWA=1" ,
375     "OK" ,
376     "AT+CMEE=1" ,
377     "OK"
378 };
379 
380 const char * TC_AG_SLC_BV_10_I[] = {
381     "USER:a",
382     "AT+BRSF=127" ,
383     "+BRSF:4079" ,
384     "OK" ,
385     "AT+CIND=?" ,
386     "+CIND:(\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0,3)),(\"battchg\",(0,5)),(\"signal\",(0,5)),(\"roam\",(0,1)),(\"callheld\",(0,2))" ,
387     "OK" ,
388     "AT+CIND?" ,
389     "+CIND:1,0,0,3,5,0,0" ,
390     "OK" ,
391     "AT+CMER=3,0,0,1" ,
392     "OK" ,
393     "AT+CHLD=?" ,
394     "+CHLD:(1,1x,2,2x,3)" ,
395     "OK" ,
396     "AT+VGS=9" ,
397     "OK" ,
398     "AT+VGM=9" ,
399     "OK" ,
400     "AT+CLIP=1" ,
401     "OK" ,
402     "AT+CCWA=1" ,
403     "OK" ,
404     "AT+CMEE=1" ,
405     "OK"
406 };
407 
408 hfp_test_item_t pts_ag_slc_tests[] = {
409     TEST_SEQUENCE(TC_AG_SLC_BV_01_C),
410     TEST_SEQUENCE(TC_AG_SLC_BV_02_C),
411     TEST_SEQUENCE(TC_AG_SLC_BV_03_C),
412     TEST_SEQUENCE(TC_AG_SLC_BV_04_C),
413     TEST_SEQUENCE(TC_AG_SLC_BV_05_I),
414     TEST_SEQUENCE(TC_AG_SLC_BV_06_I),
415     TEST_SEQUENCE(TC_AG_SLC_BV_07_I),
416     TEST_SEQUENCE(TC_AG_SLC_BV_09_I),
417     TEST_SEQUENCE(TC_AG_SLC_BV_10_I)
418 };
419 
420 
421 const char * TC_HF_SLC_BV_01_C[] = {
422     "AT+BRSF=951" ,
423     "+BRSF: 511" ,
424     "OK" ,
425     "AT+CIND=?" ,
426     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
427     "OK" ,
428     "AT+CIND?" ,
429     "+CIND: 1,0,0,0,5,0,5" ,
430     "OK" ,
431     "AT+CMER=3,0,0,1" ,
432     "OK" ,
433     "AT+CHLD=?" ,
434     "+CHLD: (0,1,1x,2,2x,3,f4)" ,
435     "OK" ,
436     "USER:Q",
437     "+BSIR: 0" ,
438     "OK",
439     "USER:O", // 'AT+VGS=9" ,
440     "OK"
441 };
442 
443 const char * TC_HF_SLC_BV_02_C[] = {
444     "AT+BRSF=951" ,
445     "+BRSF: 511" ,
446     "OK" ,
447     "AT+CIND=?" ,
448     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
449     "OK" ,
450     "AT+CIND?" ,
451     "+CIND: 1,0,0,0,5,0,5" ,
452     "OK" ,
453     "AT+CMER=3,0,0,1" ,
454     "OK" ,
455     "AT+CHLD=?" ,
456     "+CHLD: (0,1,1x,2,2x,3,4)" ,
457     "OK" ,
458     "USER:Q", // "AT+VGM=9" ,
459     "OK",
460     "USER:O", // 'AT+VGS=9" ,
461     "+BSIR: 0" ,
462     "OK"
463 };
464 
465 const char * TC_HF_SLC_BV_03_C[] = {
466     "AT+BRSF=951" ,
467     "+BRSF: 510" ,
468     "OK" ,
469     "AT+CIND=?" ,
470     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
471     "OK" ,
472     "AT+CIND?" ,
473     "+CIND: 1,0,0,0,5,0,5" ,
474     "OK" ,
475     "AT+CMER=3,0,0,1" ,
476     "OK" ,
477     "USER:Q", // "AT+VGM=9" ,
478     "OK",
479     "USER:O", // 'AT+VGS=9" ,
480     "+BSIR: 0" ,
481     "OK"
482 };
483 
484 const char * TC_HF_SLC_BV_04_C[] = {
485     "AT+BRSF=951" ,
486     "+BRSF: 510" ,
487     "OK" ,
488     "AT+CIND=?" ,
489     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
490     "OK" ,
491     "AT+CIND?" ,
492     "+CIND: 1,0,0,0,5,0,5" ,
493     "OK" ,
494     "AT+CMER=3,0,0,1" ,
495     "OK" ,
496     "USER:Q", // "AT+VGM=9" ,
497     "OK",
498     "USER:O", // 'AT+VGS=9" ,
499     "+BSIR: 0" ,
500     "OK"
501 };
502 
503 const char * TC_HF_SLC_BV_05_I[] = {
504     "AT+BRSF=951" ,
505     "+BRSF: 1023" ,
506     "OK" ,
507     "AT+BAC=1,2" ,
508     "OK" ,
509     "AT+CIND=?" ,
510     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
511     "OK" ,
512     "AT+CIND?" ,
513     "+CIND: 1,0,0,0,5,0,5" ,
514     "OK" ,
515     "AT+CMER=3,0,0,1" ,
516     "OK" ,
517     "AT+CHLD=?" ,
518     "+CHLD: (0,1,1x,2,2x,3,4)" ,
519     "OK" ,
520     "USER:Q", // "AT+VGM=9" ,
521     "OK",
522     "USER:O", // 'AT+VGS=9" ,
523     "+BSIR: 0" ,
524     "OK"
525 };
526 
527 const char * TC_HF_SLC_BV_06_I[] = {
528     "AT+BRSF=951" ,
529     "+BRSF: 1023" ,
530     "OK" ,
531     "AT+BAC=1,2" ,
532     "OK" ,
533     "AT+CIND=?" ,
534     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
535     "OK" ,
536     "AT+CIND?" ,
537     "+CIND: 1,0,0,0,5,0,5" ,
538     "OK" ,
539     "AT+CMER=3,0,0,1" ,
540     "OK" ,
541     "AT+CHLD=?" ,
542     "+CHLD: (0,1,1x,2,2x,3,4)" ,
543     "OK" ,
544     "USER:Q", // "AT+VGM=9" ,
545     "OK",
546     "USER:O", // 'AT+VGS=9" ,
547     "+BSIR: 0" ,
548     "OK"
549 };
550 
551 const char * TC_HF_SLC_BV_08_I[] = {
552     "AT+BRSF=951" ,
553     "+BRSF: 511" ,
554     "OK" ,
555     "AT+CIND=?" ,
556     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
557     "OK" ,
558     "AT+CIND?" ,
559     "+CIND: 1,0,0,0,5,0,5" ,
560     "OK" ,
561     "AT+CMER=3,0,0,1" ,
562     "OK" ,
563     "AT+CHLD=?" ,
564     "+CHLD: (0,1,1x,2,2x,3,4)" ,
565     "OK" ,
566     "USER:Q", // "AT+VGM=9" ,
567     "OK",
568     "USER:O", // 'AT+VGS=9" ,
569     "+BSIR: 0" ,
570     "OK"
571 };
572 
573 const char * TC_HF_SLC_BV_09_I[] = {
574     "AT+BRSF=951" ,
575     "+BRSF: 3583" ,
576     "OK" ,
577     "AT+CIND=?" ,
578     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
579     "OK" ,
580     "AT+CIND?" ,
581     "+CIND: 1,0,0,0,5,0,5" ,
582     "OK" ,
583     "AT+CMER=3,0,0,1" ,
584     "OK" ,
585     "AT+CHLD=?" ,
586     "+CHLD: (0,1,1x,2,2x,3,4)" ,
587     "OK" ,
588     "AT+BIND=1" ,
589     "OK" ,
590     "AT+BIND=?" ,
591     "+BIND: (1)" ,
592     "OK" ,
593     "AT+BIND?" ,
594     "+BIND: 1,1" ,
595     "OK" ,
596     "USER:Q", // "AT+VGM=9" ,
597     "OK",
598     "USER:O", // 'AT+VGS=9" ,
599     "+BSIR: 0" ,
600     "OK"
601 };
602 
603 const char * TC_HF_SLC_BV_10_I[] = {
604     "AT+BRSF=951" ,
605     "+BRSF: 511" ,
606     "OK" ,
607     "AT+CIND=?" ,
608     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
609     "OK" ,
610     "AT+CIND?" ,
611     "+CIND: 1,0,0,0,5,0,5" ,
612     "OK" ,
613     "AT+CMER=3,0,0,1" ,
614     "OK" ,
615     "AT+CHLD=?" ,
616     "+CHLD: (0,1,1x,2,2x,3,4)" ,
617     "OK" ,
618     "USER:Q", // "AT+VGM=9" ,
619     "OK",
620     "USER:O", // 'AT+VGS=9" ,
621     "+BSIR: 0" ,
622     "OK"
623 };
624 
625 hfp_test_item_t pts_hf_slc_tests[] = {
626     TEST_SEQUENCE(TC_HF_SLC_BV_01_C),
627     TEST_SEQUENCE(TC_HF_SLC_BV_02_C),
628     TEST_SEQUENCE(TC_HF_SLC_BV_03_C),
629     TEST_SEQUENCE(TC_HF_SLC_BV_04_C),
630     TEST_SEQUENCE(TC_HF_SLC_BV_05_I),
631     TEST_SEQUENCE(TC_HF_SLC_BV_06_I),
632     TEST_SEQUENCE(TC_HF_SLC_BV_08_I),
633     TEST_SEQUENCE(TC_HF_SLC_BV_09_I),
634     TEST_SEQUENCE(TC_HF_SLC_BV_10_I),
635 };
636 
637 
638 /* PTS test sequences - ATA Group */
639 
640 const char * TC_AG_ATA_BV_01_I[] = {
641     "USER:a",
642     "AT+BRSF=127" ,
643     "+BRSF:4079" ,
644     "OK" ,
645     "AT+CIND=?" ,
646     "+CIND:(\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0,3)),(\"battchg\",(0,5)),(\"signal\",(0,5)),(\"roam\",(0,1)),(\"callheld\",(0,2))" ,
647     "OK" ,
648     "AT+CIND?" ,
649     "+CIND:1,0,0,3,5,0,0" ,
650     "OK" ,
651     "AT+CMER=3,0,0,1" ,
652     "OK" ,
653     "AT+CHLD=?" ,
654     "+CHLD:(1,1x,2,2x,3)" ,
655     "OK" ,
656     "AT+VGS=9" ,
657     "OK" ,
658     "AT+VGM=9" ,
659     "OK" ,
660     "AT+CLIP=1" ,
661     "OK" ,
662     "AT+CCWA=1" ,
663     "OK" ,
664     "AT+CMEE=1" ,
665     "OK" ,
666     "USER:c",
667     "+CIEV:3,1" ,
668     "RING" ,
669     "+CLIP: \"1234567\",129" ,
670     "ATA" ,
671     "+CIEV:2,1" ,
672     "+CIEV:3,0" ,
673     "OK" ,
674     "USER:C",
675     "USER:B",
676     "USER:t",
677     "+CIEV:2,0"
678 };
679 
680 const char * TC_AG_ATA_BV_02_I[] = {
681     "USER:a",
682     "AT+BRSF=127" ,
683     "+BRSF:4079" ,
684     "OK" ,
685     "AT+CIND=?" ,
686     "+CIND:(\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0,3)),(\"battchg\",(0,5)),(\"signal\",(0,5)),(\"roam\",(0,1)),(\"callheld\",(0,2))" ,
687     "OK" ,
688     "AT+CIND?" ,
689     "+CIND:1,0,0,3,5,0,0" ,
690     "OK" ,
691     "AT+CMER=3,0,0,1" ,
692     "OK" ,
693     "AT+CHLD=?" ,
694     "+CHLD:(1,1x,2,2x,3)" ,
695     "OK" ,
696     "AT+VGS=9" ,
697     "OK" ,
698     "AT+VGM=9" ,
699     "OK" ,
700     "AT+CLIP=1" ,
701     "OK" ,
702     "AT+CCWA=1" ,
703     "OK" ,
704     "AT+CMEE=1" ,
705     "OK" ,
706     "USER:c",
707     "+CIEV:3,1" ,
708     "RING" ,
709     "+CLIP: \"1234567\",129" ,
710     "ATA" ,
711     "+CIEV:2,1" ,
712     "+CIEV:3,0" ,
713     "OK" ,
714     "USER:C",
715     "USER:t",
716     "+CIEV:2,0"
717 };
718 
719 hfp_test_item_t pts_ag_ata_tests[] = {
720     TEST_SEQUENCE(TC_AG_ATA_BV_01_I),
721     TEST_SEQUENCE(TC_AG_ATA_BV_02_I)
722 };
723 
724 const char * TC_HF_ATA_BV_01_I[] = {
725     "AT+BRSF=951" ,
726     "+BRSF: 511" ,
727     "OK" ,
728     "AT+CIND=?" ,
729     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
730     "OK" ,
731     "AT+CIND?" ,
732     "+CIND: 1,0,0,0,5,0,5" ,
733     "OK" ,
734     "AT+CMER=3,0,0,1" ,
735     "OK" ,
736     "AT+CHLD=?" ,
737     "+CHLD: (0,1,1x,2,2x,3,4)" ,
738     "OK" ,
739     "AT+VGM=9" ,
740     "OK",
741     "AT+VGS=9" ,
742     "OK",
743     "+BSIR: 0" ,
744     "+CIEV: 3,1" ,
745     "RING" ,
746     "RING" ,
747     "RING" ,
748     "USER:f", // "ATA" ,
749     "OK" ,
750     "+CIEV: 2,1" ,
751     "+CIEV: 3,0" ,
752     "USER:B",
753     "+CIEV: 2,0"
754 };
755 
756 const char * TC_HF_ATA_BV_02_I[] = {
757     "AT+BRSF=951" ,
758     "+BRSF: 511" ,
759     "OK" ,
760     "AT+CIND=?" ,
761     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
762     "OK" ,
763     "AT+CIND?" ,
764     "+CIND: 1,0,0,0,5,0,5" ,
765     "OK" ,
766     "AT+CMER=3,0,0,1" ,
767     "OK" ,
768     "AT+CHLD=?" ,
769     "+CHLD: (0,1,1x,2,2x,3,4)" ,
770     "OK" ,
771     "AT+VGM=9" ,
772     "OK",
773     "AT+VGS=9" ,
774     "OK",
775     "+BSIR: 0" ,
776     "+CIEV: 3,1" ,
777     "RING" ,
778     "RING" ,
779     "USER:f", // "ATA" ,
780     "OK" ,
781     "+CIEV: 2,1" ,
782     "+CIEV: 3,0" ,
783     "USER:t"
784 };
785 
786 hfp_test_item_t pts_hf_ata_tests[] = {
787     TEST_SEQUENCE(TC_HF_ATA_BV_01_I),
788     TEST_SEQUENCE(TC_HF_ATA_BV_02_I)
789 };
790 
791 
792 /* PTS test sequences - TWC Group */
793 
794 const char * TC_AG_TWC_BV_01_I[] = {
795     "USER:a",
796     "AT+BRSF=127" ,
797     "+BRSF:4079" ,
798     "OK" ,
799     "AT+CIND=?" ,
800     "+CIND:(\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0,3)),(\"battchg\",(0,5)),(\"signal\",(0,5)),(\"roam\",(0,1)),(\"callheld\",(0,2))" ,
801     "OK" ,
802     "AT+CIND?" ,
803     "+CIND:1,0,0,3,5,0,0" ,
804     "OK" ,
805     "AT+CMER=3,0,0,1" ,
806     "OK" ,
807     "AT+CHLD=?" ,
808     "+CHLD:(1,1x,2,2x,3)" ,
809     "OK" ,
810     "AT+VGS=9" ,
811     "OK" ,
812     "AT+VGM=9" ,
813     "OK" ,
814     "AT+CLIP=1" ,
815     "OK" ,
816     "AT+CCWA=1" ,
817     "OK" ,
818     "AT+CMEE=1" ,
819     "OK" ,
820     "USER:c",
821     "+CIEV:3,1" ,
822     "RING" ,
823     "+CLIP: \"1234567\",129" ,
824     "ATA" ,
825     "+CIEV:2,1" ,
826     "+CIEV:3,0" ,
827     "OK" ,
828     "USER:m",
829     "+CCWA: \"7654321\",129" ,
830     "+CIEV:3,1" ,
831     "AT+CHLD=0" ,
832     "OK" ,
833     "+CIEV:3,0" ,
834     "USER:C",
835     "+CIEV:2,0",
836     "USER:t"
837 };
838 
839 const char * TC_AG_TWC_BV_02_I[] = {
840     "USER:a",
841     "AT+BRSF=127" ,
842     "+BRSF:4079" ,
843     "OK" ,
844     "AT+CIND=?" ,
845     "+CIND:(\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0,3)),(\"battchg\",(0,5)),(\"signal\",(0,5)),(\"roam\",(0,1)),(\"callheld\",(0,2))" ,
846     "OK" ,
847     "AT+CIND?" ,
848     "+CIND:1,0,0,3,5,0,0" ,
849     "OK" ,
850     "AT+CMER=3,0,0,1" ,
851     "OK" ,
852     "AT+CHLD=?" ,
853     "+CHLD:(1,1x,2,2x,3)" ,
854     "OK" ,
855     "AT+VGS=9" ,
856     "OK" ,
857     "AT+VGM=9" ,
858     "OK" ,
859     "AT+CLIP=1" ,
860     "OK" ,
861     "AT+CCWA=1" ,
862     "OK" ,
863     "AT+CMEE=1" ,
864     "OK" ,
865     "USER:c",
866     "+CIEV:3,1" ,
867     "RING" ,
868     "+CLIP: \"1234567\",129" ,
869     "ATA" ,
870     "+CIEV:2,1" ,
871     "+CIEV:3,0" ,
872     "OK" ,
873     "USER:m",
874     "+CCWA: \"7654321\",129" ,
875     "+CIEV:3,1" ,
876     "AT+CHLD=1" ,
877     "OK" ,
878     "+CIEV:3,0" ,
879     "USER:C",
880     "+CIEV:2,0",
881     "USER:t"
882 };
883 
884 const char * TC_AG_TWC_BV_03_I[] = {
885     "USER:a",
886     "AT+BRSF=127" ,
887     "+BRSF:4079" ,
888     "OK" ,
889     "AT+CIND=?" ,
890     "+CIND:(\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0,3)),(\"battchg\",(0,5)),(\"signal\",(0,5)),(\"roam\",(0,1)),(\"callheld\",(0,2))" ,
891     "OK" ,
892     "AT+CIND?" ,
893     "+CIND:1,0,0,3,5,0,0" ,
894     "OK" ,
895     "AT+CMER=3,0,0,1" ,
896     "OK" ,
897     "AT+CHLD=?" ,
898     "+CHLD:(1,1x,2,2x,3)" ,
899     "OK" ,
900     "AT+VGS=9" ,
901     "OK" ,
902     "AT+VGM=9" ,
903     "OK" ,
904     "AT+CLIP=1" ,
905     "OK" ,
906     "AT+CCWA=1" ,
907     "OK" ,
908     "AT+CMEE=1" ,
909     "OK" ,
910     "USER:c",
911     "+CIEV:3,1" ,
912     "RING" ,
913     "+CLIP: \"1234567\",129" ,
914     "ATA" ,
915     "+CIEV:2,1" ,
916     "+CIEV:3,0" ,
917     "OK" ,
918     "USER:m",
919     "+CCWA: \"7654321\",129" ,
920     "+CIEV:3,1" ,
921     "AT+CHLD=2" ,
922     "OK" ,
923     "+CIEV:3,0" ,
924     "+CIEV:7,1" ,
925     "AT+CHLD=2" ,
926     "OK" ,
927     "+CIEV:7,1" ,
928     "AT+CHLD=1" ,
929     "OK" ,
930     "+CIEV:7,0" ,
931     "USER:C",
932     "+CIEV:2,0",
933     "USER:t"
934 };
935 
936 const char * TC_AG_TWC_BV_04_I[] = {
937     "USER:c",
938     "USER:e",
939     "USER:m",
940     "USER:e",
941     "USER:a",
942     "AT+BRSF=127" ,
943     "+BRSF:4079" ,
944     "OK" ,
945     "AT+CIND=?" ,
946     "+CIND:(\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0,3)),(\"battchg\",(0,5)),(\"signal\",(0,5)),(\"roam\",(0,1)),(\"callheld\",(0,2))" ,
947     "OK" ,
948     "AT+CIND?" ,
949     "+CIND:1,1,0,3,5,0,1" ,
950     "OK" ,
951     "AT+CMER=3,0,0,1" ,
952     "OK" ,
953     "AT+CHLD=?" ,
954     "+CHLD:(1,1x,2,2x,3)" ,
955     "OK" ,
956     "AT+VGS=9" ,
957     "OK" ,
958     "AT+VGM=9" ,
959     "OK" ,
960     "AT+CLIP=1" ,
961     "OK" ,
962     "AT+CCWA=1" ,
963     "OK" ,
964     "AT+CMEE=1" ,
965     "OK" ,
966     "AT+CHLD=3" ,
967     "OK" ,
968     "+CIEV:7,0" ,
969     "USER:C",
970     "+CIEV:2,0",
971     "USER:t"
972 };
973 
974 const char * TC_AG_TWC_BV_05_I[] = {
975     "USER:a" ,
976     "AT+BRSF=127" ,
977     "+BRSF:4079" ,
978     "OK" ,
979     "AT+CIND=?" ,
980     "+CIND:(\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0,3)),(\"battchg\",(0,5)),(\"signal\",(0,5)),(\"roam\",(0,1)),(\"callheld\",(0,2))" ,
981     "OK" ,
982     "AT+CIND?" ,
983     "+CIND:1,0,0,3,5,0,0" ,
984     "OK" ,
985     "AT+CMER=3,0,0,1" ,
986     "OK" ,
987     "AT+CHLD=?" ,
988     "+CHLD:(1,1x,2,2x,3)" ,
989     "OK" ,
990     "AT+VGS=9" ,
991     "OK" ,
992     "AT+VGM=9" ,
993     "OK" ,
994     "AT+CLIP=1" ,
995     "OK" ,
996     "AT+CCWA=1" ,
997     "OK" ,
998     "AT+CMEE=1" ,
999     "OK" ,
1000     "USER:c" ,
1001     "+CIEV:3,1" ,
1002     "RING" ,
1003     "+CLIP: \"1234567\",129" ,
1004     "ATA" ,
1005     "+CIEV:2,1" ,
1006     "+CIEV:3,0" ,
1007     "OK" ,
1008     "AT+BLDN" ,
1009     "+CIEV:7,2" ,
1010     "OK" ,
1011     "+CIEV:3,2" ,
1012     "USER:j" ,
1013     "+CIEV:2,1" ,
1014     "+CIEV:3,0" ,
1015     "+CIEV:7,1" ,
1016     "AT+CHLD=1" ,
1017     "OK" ,
1018     "+CIEV:7,0" ,
1019     "USER:C" ,
1020     "+CIEV:2,0" ,
1021     "USER:t"
1022 };
1023 
1024 const char * TC_AG_TWC_BV_06_I[] = {
1025     "USER:a" ,
1026     "AT+BRSF=127" ,
1027     "+BRSF:4079" ,
1028     "OK" ,
1029     "AT+CIND=?" ,
1030     "+CIND:(\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0,3)),(\"battchg\",(0,5)),(\"signal\",(0,5)),(\"roam\",(0,1)),(\"callheld\",(0,2))" ,
1031     "OK" ,
1032     "AT+CIND?" ,
1033     "+CIND:1,0,0,3,5,0,0" ,
1034     "OK" ,
1035     "AT+CMER=3,0,0,1" ,
1036     "OK" ,
1037     "AT+CHLD=?" ,
1038     "+CHLD:(1,1x,2,2x,3)" ,
1039     "OK" ,
1040     "AT+VGS=9" ,
1041     "OK" ,
1042     "AT+VGM=9" ,
1043     "OK" ,
1044     "AT+CLIP=1" ,
1045     "OK" ,
1046     "AT+CCWA=1" ,
1047     "OK" ,
1048     "AT+CMEE=1" ,
1049     "OK" ,
1050     "USER:c" ,
1051     "+CIEV:3,1" ,
1052     "RING" ,
1053     "+CLIP: \"1234567\",129" ,
1054     "ATA" ,
1055     "+CIEV:2,1" ,
1056     "+CIEV:3,0" ,
1057     "OK" ,
1058     "USER:m" ,
1059     "+CCWA: \"7654321\",129" ,
1060     "+CIEV:3,1" ,
1061     "AT+CHLD=2" ,
1062     "OK" ,
1063     "+CIEV:3,0" ,
1064     "+CIEV:7,1" ,
1065     "AT+CHLD=4" ,
1066     "OK" ,
1067     "+CIEV:2,0" ,
1068     "+CIEV:7,0" ,
1069     "USER:B" ,
1070     "USER:A"
1071 };
1072 
1073 hfp_test_item_t pts_ag_twc_tests[] = {
1074     TEST_SEQUENCE(TC_AG_TWC_BV_01_I),
1075     TEST_SEQUENCE(TC_AG_TWC_BV_02_I),
1076     TEST_SEQUENCE(TC_AG_TWC_BV_03_I),
1077     TEST_SEQUENCE(TC_AG_TWC_BV_04_I),
1078     TEST_SEQUENCE(TC_AG_TWC_BV_05_I),
1079     TEST_SEQUENCE(TC_AG_TWC_BV_06_I)
1080 };
1081 
1082 
1083 const char * TC_HF_TWC_BV_01_I[] = {
1084     "AT+BRSF=951" ,
1085     "+BRSF: 511" ,
1086     "OK" ,
1087     "AT+CIND=?" ,
1088     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
1089     "OK" ,
1090     "AT+CIND?" ,
1091     "+CIND: 1,0,0,0,5,0,5" ,
1092     "OK" ,
1093     "AT+CMER=3,0,0,1" ,
1094     "OK" ,
1095     "AT+CHLD=?" ,
1096     "+CHLD: (0,1,1x,2,2x,3,4)" ,
1097     "OK" ,
1098     "USER:Q", // "AT+VGM=9" ,
1099     "+BSIR: 0" ,
1100     "OK" ,
1101     "USER:O", // 'AT+VGS=9" ,
1102     "OK" ,
1103     "+CIEV: 3,1" ,
1104     "RING" ,
1105     "RING" ,
1106     "USER:f" , // "ATA"
1107     "OK" ,
1108     "+CIEV: 2,1" ,
1109     "+CIEV: 3,0" ,
1110     "+CCWA: \"7654321\",129" ,
1111     "+CIEV: 3,1" ,
1112     "USER:u" , // "AT+CHLD=0" ,
1113     "OK" ,
1114     "+CIEV: 3,0" ,
1115     "+CIEV: 2,0"
1116 };
1117 
1118 const char * TC_HF_TWC_BV_02_I[] = {
1119     "AT+BRSF=951" ,
1120     "+BRSF: 511" ,
1121     "OK" ,
1122     "AT+CIND=?" ,
1123     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
1124     "OK" ,
1125     "AT+CIND?" ,
1126     "+CIND: 1,0,0,0,5,0,5" ,
1127     "OK" ,
1128     "AT+CMER=3,0,0,1" ,
1129     "OK" ,
1130     "AT+CHLD=?" ,
1131     "+CHLD: (0,1,1x,2,2x,3,4)" ,
1132     "OK" ,
1133     "AT+VGM=9" ,
1134     "OK",
1135     "AT+VGS=9" ,
1136     "OK",
1137     "+BSIR: 0" ,
1138     "+CIEV: 3,1" ,
1139     "RING" ,
1140     "RING" ,
1141     "USER:f" , //"ATA" ,
1142     "OK" ,
1143     "+CIEV: 2,1" ,
1144     "+CIEV: 3,0" ,
1145     "+CCWA: \"7654321\",129" ,
1146     "+CIEV: 3,1" ,
1147     "USER:v" , //"AT+CHLD=2" ,
1148     "OK" ,
1149     "+CIEV: 3,0" ,
1150     "+CIEV: 4,1" ,
1151     "USER:v" , //"AT+CHLD=2" ,
1152     "OK" ,
1153     "+CIEV: 4,1" ,
1154     "+CIEV: 2,0" ,
1155     "AT+BRSF=951" ,
1156     "+BRSF: 511" ,
1157     "OK" ,
1158     "AT+CIND=?" ,
1159     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
1160     "OK" ,
1161     "AT+CIND?" ,
1162     "+CIND: 1,0,0,0,5,0,5" ,
1163     "OK" ,
1164     "AT+CMER=3,0,0,1" ,
1165     "OK" ,
1166     "AT+CHLD=?" ,
1167     "+CHLD: (0,1,1x,2,2x,3,4)" ,
1168     "OK",
1169     "AT+VGM=9" ,
1170     "OK",
1171     "AT+VGS=9" ,
1172     "OK",
1173     "+BSIR: 0" ,
1174     "+CIEV: 3,1" ,
1175     "RING" ,
1176     "USER:f" , //"ATA" ,
1177     "OK" ,
1178     "+CIEV: 2,1" ,
1179     "+CIEV: 3,0" ,
1180     "AT+BRSF=951" ,
1181     "+BRSF: 511" ,
1182     "OK" ,
1183     "AT+CIND=?" ,
1184     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
1185     "OK" ,
1186     "AT+CIND?" ,
1187     "+CIND: 1,0,0,0,5,0,5" ,
1188     "OK" ,
1189     "AT+CMER=3,0,0,1" ,
1190     "OK" ,
1191     "AT+CHLD=?" ,
1192     "+CHLD: (0,1,1x,2,2x,3,4)" ,
1193     "OK" ,
1194     "AT+VGM=9" ,
1195     "OK",
1196     "AT+VGS=9" ,
1197     "OK",
1198     "+BSIR: 0" ,
1199     "+CIEV: 3,1" ,
1200     "RING" ,
1201     "RING" ,
1202     "RING" ,
1203     "USER:f" , //"ATA" ,
1204     "OK" ,
1205     "+CIEV: 2,1" ,
1206     "+CIEV: 3,0" ,
1207     "+CCWA: \"7654321\",129" ,
1208     "+CIEV: 3,1" ,
1209     "USER:U" ,// "AT+CHLD=1" ,
1210     "OK" ,
1211     "+CIEV: 3,0" ,
1212     "+CIEV: 2,0"
1213 };
1214 
1215 const char * TC_HF_TWC_BV_03_I[] = {
1216     "AT+BRSF=951" ,
1217     "+BRSF: 511" ,
1218     "OK" ,
1219     "AT+CIND=?" ,
1220     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
1221     "OK" ,
1222     "AT+CIND?" ,
1223     "+CIND: 1,0,0,0,5,0,5" ,
1224     "OK" ,
1225     "AT+CMER=3,0,0,1" ,
1226     "OK" ,
1227     "AT+CHLD=?" ,
1228     "+CHLD: (0,1,1x,2,2x,3,4)" ,
1229     "OK" ,
1230     "AT+VGM=9" ,
1231     "OK",
1232     "AT+VGS=9" ,
1233     "OK",
1234     "+BSIR: 0" ,
1235     "+CIEV: 3,1" ,
1236     "RING" ,
1237     "RING" ,
1238     "RING" ,
1239     "USER:f" , //"ATA" ,
1240     "OK" ,
1241     "+CIEV: 2,1" ,
1242     "+CIEV: 3,0" ,
1243     "+CCWA: \"7654321\",129" ,
1244     "+CIEV: 3,1" ,
1245     "USER:v" , //"AT+CHLD=2" ,
1246     "OK" ,
1247     "+CIEV: 3,0" ,
1248     "+CIEV: 4,1" ,
1249     "USER:v" , //"AT+CHLD=2" ,
1250     "OK" ,
1251     "+CIEV: 4,1" ,
1252     "+CIEV: 2,0" ,
1253     "AT+BRSF=951" ,
1254     "+BRSF: 511" ,
1255     "OK" ,
1256     "AT+CIND=?" ,
1257     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
1258     "OK" ,
1259     "AT+CIND?" ,
1260     "+CIND: 1,0,0,0,5,0,5" ,
1261     "OK" ,
1262     "AT+CMER=3,0,0,1" ,
1263     "OK" ,
1264     "AT+CHLD=?" ,
1265     "+CHLD: (0,1,1x,2,2x,3,4)" ,
1266     "OK" ,
1267     "AT+VGM=9" ,
1268     "OK",
1269     "AT+VGS=9" ,
1270     "OK",
1271     "+BSIR: 0" ,
1272     "+CIEV: 3,1" ,
1273     "RING" ,
1274     "USER:f" , //"ATA" ,
1275     "OK" ,
1276     "+CIEV: 2,1" ,
1277     "+CIEV: 3,0" ,
1278     "AT+BRSF=951" ,
1279     "+BRSF: 511" ,
1280     "OK" ,
1281     "AT+CIND=?" ,
1282     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
1283     "OK" ,
1284     "AT+CIND?" ,
1285     "+CIND: 1,0,0,0,5,0,5" ,
1286     "OK" ,
1287     "AT+CMER=3,0,0,1" ,
1288     "OK" ,
1289     "AT+CHLD=?" ,
1290     "+CHLD: (0,1,1x,2,2x,3,4)" ,
1291     "OK" ,
1292     "AT+VGM=9" ,
1293     "OK",
1294     "AT+VGS=9" ,
1295     "OK",
1296     "+BSIR: 0" ,
1297     "+CIEV: 3,1" ,
1298     "RING" ,
1299     "RING" ,
1300     "RING" ,
1301     "USER:f" , //"ATA" ,
1302     "OK" ,
1303     "+CIEV: 2,1" ,
1304     "+CIEV: 3,0" ,
1305     "+CCWA: \"7654321\",129" ,
1306     "+CIEV: 3,1" ,
1307     "USER:U" ,  // "AT+CHLD=1" ,
1308     "OK" ,
1309     "+CIEV: 3,0" ,
1310     "+CIEV: 2,0" ,
1311     "AT+BRSF=951" ,
1312     "+BRSF: 511" ,
1313     "OK" ,
1314     "AT+CIND=?" ,
1315     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
1316     "OK" ,
1317     "AT+CIND?" ,
1318     "+CIND: 1,0,0,0,5,0,5" ,
1319     "OK" ,
1320     "AT+CMER=3,0,0,1" ,
1321     "OK" ,
1322     "AT+CHLD=?" ,
1323     "+CHLD: (0,1,1x,2,2x,3,4)" ,
1324     "OK" ,
1325     "AT+VGM=9" ,
1326     "OK",
1327     "AT+VGS=9" ,
1328     "OK",
1329     "+BSIR: 0" ,
1330     "+CIEV: 3,1" ,
1331     "RING" ,
1332     "RING" ,
1333     "RING" ,
1334     "RING" ,
1335     "USER:f" , //"ATA" ,
1336     "OK" ,
1337     "+CIEV: 2,1" ,
1338     "+CIEV: 3,0" ,
1339     "+CCWA: \"7654321\",129" ,
1340     "+CIEV: 3,1" ,
1341     "USER:v" , //"AT+CHLD=2" ,
1342     "OK" ,
1343     "+CIEV: 3,0" ,
1344     "+CIEV: 4,1" ,
1345     "USER:v" , //"AT+CHLD=2" ,
1346     "OK" ,
1347     "+CIEV: 4,1" ,
1348     "USER:U" ,  // "AT+CHLD=1" ,
1349     "OK" ,
1350     "+CIEV: 4,0" ,
1351     "+CIEV: 2,0"
1352 };
1353 
1354 const char * TC_HF_TWC_BV_04_I[] = {
1355     "AT+BRSF=951" ,
1356     "+BRSF: 511" ,
1357     "OK" ,
1358     "AT+CIND=?" ,
1359     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
1360     "OK" ,
1361     "AT+CIND?" ,
1362     "+CIND: 1,0,0,0,5,0,5" ,
1363     "OK" ,
1364     "AT+CMER=3,0,0,1" ,
1365     "OK" ,
1366     "AT+CHLD=?" ,
1367     "+CHLD: (0,1,1x,2,2x,3,4)" ,
1368     "OK" ,
1369     "AT+VGM=9" ,
1370     "OK",
1371     "AT+VGS=9" ,
1372     "OK",
1373     "+BSIR: 0" ,
1374     "+CIEV: 3,1" ,
1375     "RING" ,
1376     "RING" ,
1377     "RING" ,
1378     "USER:f" , //"ATA" ,
1379     "OK" ,
1380     "+CIEV: 2,1" ,
1381     "+CIEV: 3,0" ,
1382     "+CCWA: \"7654321\",129" ,
1383     "+CIEV: 3,1" ,
1384     "USER:v" , //"AT+CHLD=2" ,
1385     "OK" ,
1386     "+CIEV: 3,0" ,
1387     "+CIEV: 4,1" ,
1388     "USER:v" , //"AT+CHLD=2" ,
1389     "OK" ,
1390     "+CIEV: 4,1" ,
1391     "+CIEV: 2,0" ,
1392     "AT+BRSF=951" ,
1393     "+BRSF: 511" ,
1394     "OK" ,
1395     "AT+CIND=?" ,
1396     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
1397     "OK" ,
1398     "AT+CIND?" ,
1399     "+CIND: 1,0,0,0,5,0,5" ,
1400     "OK" ,
1401     "AT+CMER=3,0,0,1" ,
1402     "OK" ,
1403     "AT+CHLD=?" ,
1404     "+CHLD: (0,1,1x,2,2x,3,4)" ,
1405     "OK" ,
1406     "AT+VGM=9" ,
1407     "OK",
1408     "AT+VGS=9" ,
1409     "OK",
1410     "+BSIR: 0" ,
1411     "+CIEV: 3,1" ,
1412     "RING" ,
1413     "USER:f" , //"ATA" ,
1414     "OK" ,
1415     "+CIEV: 2,1" ,
1416     "+CIEV: 3,0" ,
1417     "AT+BRSF=951" ,
1418     "+BRSF: 511" ,
1419     "OK" ,
1420     "AT+CIND=?" ,
1421     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
1422     "OK" ,
1423     "AT+CIND?" ,
1424     "+CIND: 1,0,0,0,5,0,5" ,
1425     "OK" ,
1426     "AT+CMER=3,0,0,1" ,
1427     "OK" ,
1428     "AT+CHLD=?" ,
1429     "+CHLD: (0,1,1x,2,2x,3,4)" ,
1430     "OK" ,
1431     "AT+VGM=9" ,
1432     "OK",
1433     "AT+VGS=9" ,
1434     "OK",
1435     "+BSIR: 0" ,
1436     "+CIEV: 3,1" ,
1437     "RING" ,
1438     "RING" ,
1439     "RING" ,
1440     "USER:f" , //"ATA" ,
1441     "OK" ,
1442     "+CIEV: 2,1" ,
1443     "+CIEV: 3,0" ,
1444     "+CCWA: \"7654321\",129" ,
1445     "+CIEV: 3,1" ,
1446     "USER:U" ,  // "AT+CHLD=1" ,
1447     "OK" ,
1448     "+CIEV: 3,0" ,
1449     "+CIEV: 2,0" ,
1450     "AT+BRSF=951" ,
1451     "+BRSF: 511" ,
1452     "OK" ,
1453     "AT+CIND=?" ,
1454     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
1455     "OK" ,
1456     "AT+CIND?" ,
1457     "+CIND: 1,0,0,0,5,0,5" ,
1458     "OK" ,
1459     "AT+CMER=3,0,0,1" ,
1460     "OK" ,
1461     "AT+CHLD=?" ,
1462     "+CHLD: (0,1,1x,2,2x,3,4)" ,
1463     "OK" ,
1464     "AT+VGM=9" ,
1465     "OK",
1466     "AT+VGS=9" ,
1467     "OK",
1468     "+BSIR: 0" ,
1469     "+CIEV: 3,1" ,
1470     "RING" ,
1471     "RING" ,
1472     "RING" ,
1473     "RING" ,
1474     "USER:f" , //"ATA" ,
1475     "OK" ,
1476     "+CIEV: 2,1" ,
1477     "+CIEV: 3,0" ,
1478     "+CCWA: \"7654321\",129" ,
1479     "+CIEV: 3,1" ,
1480     "USER:v" , //"AT+CHLD=2" ,
1481     "OK" ,
1482     "+CIEV: 3,0" ,
1483     "+CIEV: 4,1" ,
1484     "USER:v" , //"AT+CHLD=2" ,
1485     "OK" ,
1486     "+CIEV: 4,1" ,
1487     "USER:U" ,  // "AT+CHLD=1" ,
1488     "OK" ,
1489     "+CIEV: 4,0" ,
1490     "+CIEV: 2,0" ,
1491     "AT+BRSF=951" ,
1492     "+BRSF: 511" ,
1493     "OK" ,
1494     "AT+CIND=?" ,
1495     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
1496     "OK" ,
1497     "AT+CIND?" ,
1498     "+CIND: 1,0,0,0,5,0,5" ,
1499     "OK" ,
1500     "AT+CMER=3,0,0,1" ,
1501     "OK" ,
1502     "AT+CHLD=?" ,
1503     "+CHLD: (0,1,1x,2,2x,3,4)" ,
1504     "OK" ,
1505     "AT+VGM=9" ,
1506     "OK",
1507     "AT+VGS=9" ,
1508     "OK",
1509     "+BSIR: 0" ,
1510     "+CIEV: 3,1" ,
1511     "RING" ,
1512     "RING" ,
1513     "RING" ,
1514     "USER:f" , //"ATA" ,
1515     "OK" ,
1516     "+CIEV: 2,1" ,
1517     "+CIEV: 3,0" ,
1518     "+CCWA: \"7654321\",129" ,
1519     "+CIEV: 3,1" ,
1520     "USER:v" , //"AT+CHLD=2" ,
1521     "OK" ,
1522     "+CIEV: 3,0" ,
1523     "+CIEV: 4,1" ,
1524     "+CIEV: 2,0" ,
1525     "AT+BRSF=951" ,
1526     "+BRSF: 511" ,
1527     "OK" ,
1528     "AT+CIND=?" ,
1529     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
1530     "OK" ,
1531     "AT+CIND?" ,
1532     "+CIND: 1,0,0,0,5,0,5" ,
1533     "OK" ,
1534     "AT+CMER=3,0,0,1" ,
1535     "OK" ,
1536     "AT+CHLD=?" ,
1537     "+CHLD: (0,1,1x,2,2x,3,4)" ,
1538     "OK" ,
1539     "AT+VGM=9" ,
1540     "OK",
1541     "AT+VGS=9" ,
1542     "OK",
1543     "+BSIR: 0" ,
1544     "+CIEV: 3,1" ,
1545     "RING" ,
1546     "RING" ,
1547     "RING" ,
1548     "USER:f" , //"ATA" ,
1549     "OK" ,
1550     "+CIEV: 2,1" ,
1551     "+CIEV: 3,0" ,
1552     "+CCWA: \"7654321\",129" ,
1553     "+CIEV: 3,1" ,
1554     "USER:v" , //"AT+CHLD=2" ,
1555     "OK" ,
1556     "+CIEV: 3,0" ,
1557     "+CIEV: 4,1" ,
1558     "USER:V" , // "AT+CHLD=3" ,
1559     "OK" ,
1560     "+CIEV: 4,0" ,
1561     "+CIEV: 2,0"
1562 };
1563 
1564 
1565 const char * TC_HF_TWC_BV_05_I[] = {
1566     "AT+BRSF=951" ,
1567     "+BRSF: 511" ,
1568     "OK" ,
1569     "AT+CIND=?" ,
1570     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
1571     "OK" ,
1572     "AT+CIND?" ,
1573     "+CIND: 1,0,0,0,5,0,5" ,
1574     "OK" ,
1575     "AT+CMER=3,0,0,1" ,
1576     "OK" ,
1577     "AT+CHLD=?" ,
1578     "+CHLD: (0,1,1x,2,2x,3,4)" ,
1579     "OK" ,
1580     "AT+VGM=9" ,
1581     "OK",
1582     "AT+VGS=9" ,
1583     "OK",
1584     "+BSIR: 0" ,
1585     "+CIEV: 3,1" ,
1586     "RING" ,
1587     "RING" ,
1588     "RING" ,
1589     "USER:f" , //"ATA" ,
1590     "OK" ,
1591     "+CIEV: 2,1" ,
1592     "+CIEV: 3,0" ,
1593     "+CIEV: 2,0" ,
1594     "AT+BRSF=951" ,
1595     "+BRSF: 511" ,
1596     "OK" ,
1597     "AT+CIND=?" ,
1598     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
1599     "OK" ,
1600     "AT+CIND?" ,
1601     "+CIND: 1,0,0,0,5,0,5" ,
1602     "OK" ,
1603     "AT+CMER=3,0,0,1" ,
1604     "OK" ,
1605     "AT+CHLD=?" ,
1606     "+CHLD: (0,1,1x,2,2x,3,4)" ,
1607     "OK" ,
1608     "AT+VGM=9" ,
1609     "OK",
1610     "AT+VGS=9" ,
1611     "OK",
1612     "+BSIR: 0" ,
1613     "+CIEV: 3,1" ,
1614     "RING" ,
1615     "RING" ,
1616     "RING" ,
1617     "USER:f" , //"ATA" ,
1618     "OK" ,
1619     "+CIEV: 2,1" ,
1620     "+CIEV: 3,0" ,
1621     "USER:W" , //"AT+BLDN" ,
1622     "OK" ,
1623     "+CIEV: 3,2" ,
1624     "+CIEV: 4,2" ,
1625     "+CIEV: 3,3" ,
1626     "+CIEV: 4,1" ,
1627     "+CIEV: 3,0" ,
1628     "USER:U" ,  // "AT+CHLD=1" ,
1629     "OK" ,
1630     "+CIEV: 4,0" ,
1631     "USER:I" , // "ATD7654321;" ,
1632     "OK" ,
1633     "+CIEV: 3,2" ,
1634     "+CIEV: 4,2" ,
1635     "+CIEV: 3,3" ,
1636     "+CIEV: 4,1" ,
1637     "+CIEV: 3,0" ,
1638     "USER:U" ,  // "AT+CHLD=1" ,
1639     "OK" ,
1640     "+CIEV: 4,0" ,
1641     "USER:j" , // "ATD>1;" ,
1642     "OK" ,
1643     "+CIEV: 3,2" ,
1644     "+CIEV: 4,2" ,
1645     "+CIEV: 3,3" ,
1646     "+CIEV: 4,1" ,
1647     "+CIEV: 3,0" ,
1648     "USER:U" ,  // "AT+CHLD=1" ,
1649     "OK" ,
1650     "+CIEV: 4,0" ,
1651     "+CIEV: 2,0"
1652 };
1653 
1654 const char * TC_HF_TWC_BV_06_I[] = {
1655     "AT+BRSF=951" ,
1656     "+BRSF: 511" ,
1657     "OK" ,
1658     "AT+CIND=?" ,
1659     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
1660     "OK" ,
1661     "AT+CIND?" ,
1662     "+CIND: 1,0,0,0,5,0,5" ,
1663     "OK" ,
1664     "AT+CMER=3,0,0,1" ,
1665     "OK" ,
1666     "AT+CHLD=?" ,
1667     "+CHLD: (0,1,1x,2,2x,3,4)" ,
1668     "OK" ,
1669     "AT+VGM=9" ,
1670     "OK",
1671     "AT+VGS=9" ,
1672     "OK",
1673     "+BSIR: 0" ,
1674     "+CIEV: 3,1" ,
1675     "RING" ,
1676     "RING" ,
1677     "RING" ,
1678     "USER:f" , //"ATA" ,
1679     "OK" ,
1680     "+CIEV: 2,1" ,
1681     "+CIEV: 3,0" ,
1682     "+CIEV: 2,0" ,
1683     "AT+BRSF=951" ,
1684     "+BRSF: 511" ,
1685     "OK" ,
1686     "AT+CIND=?" ,
1687     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
1688     "OK" ,
1689     "AT+CIND?" ,
1690     "+CIND: 1,0,0,0,5,0,5" ,
1691     "OK" ,
1692     "AT+CMER=3,0,0,1" ,
1693     "OK" ,
1694     "AT+CHLD=?" ,
1695     "+CHLD: (0,1,1x,2,2x,3,4)" ,
1696     "OK" ,
1697     "AT+VGM=9" ,
1698     "OK",
1699     "AT+VGS=9" ,
1700     "OK",
1701     "+BSIR: 0" ,
1702     "+CIEV: 3,1" ,
1703     "RING" ,
1704     "RING" ,
1705     "RING" ,
1706     "USER:f" , //"ATA" ,
1707     "OK" ,
1708     "+CIEV: 2,1" ,
1709     "+CIEV: 3,0" ,
1710     "USER:W" , //"AT+BLDN" ,
1711     "OK" ,
1712     "+CIEV: 3,2" ,
1713     "+CIEV: 4,2" ,
1714     "+CIEV: 3,3" ,
1715     "+CIEV: 4,1" ,
1716     "+CIEV: 3,0" ,
1717     "USER:U" ,  // "AT+CHLD=1" ,
1718     "OK" ,
1719     "+CIEV: 4,0" ,
1720     "USER:I" , // "ATD7654321;" ,
1721     "OK" ,
1722     "+CIEV: 3,2" ,
1723     "+CIEV: 4,2" ,
1724     "+CIEV: 3,3" ,
1725     "+CIEV: 4,1" ,
1726     "+CIEV: 3,0" ,
1727     "USER:U" ,  // "AT+CHLD=1" ,
1728     "OK" ,
1729     "+CIEV: 4,0" ,
1730     "USER:j" , // "ATD>1;" ,
1731     "OK" ,
1732     "+CIEV: 3,2" ,
1733     "+CIEV: 4,2" ,
1734     "+CIEV: 3,3" ,
1735     "+CIEV: 4,1" ,
1736     "+CIEV: 3,0" ,
1737     "USER:U" ,  // "AT+CHLD=1" ,
1738     "OK" ,
1739     "+CIEV: 4,0" ,
1740     "+CIEV: 2,0" ,
1741     "AT+BRSF=951" ,
1742     "+BRSF: 511" ,
1743     "OK" ,
1744     "AT+CIND=?" ,
1745     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
1746     "OK" ,
1747     "AT+CIND?" ,
1748     "+CIND: 1,0,0,0,5,0,5" ,
1749     "OK" ,
1750     "AT+CMER=3,0,0,1" ,
1751     "OK" ,
1752     "AT+CHLD=?" ,
1753     "+CHLD: (0,1,1x,2,2x,3,4)" ,
1754     "OK" ,
1755     "AT+VGM=9" ,
1756     "OK",
1757     "AT+VGS=9" ,
1758     "OK",
1759     "+BSIR: 0" ,
1760     "+CIEV: 3,1" ,
1761     "RING" ,
1762     "RING" ,
1763     "RING" ,
1764     "USER:f" , //"ATA" ,
1765     "OK" ,
1766     "+CIEV: 2,1" ,
1767     "+CIEV: 3,0" ,
1768     "+CCWA: \"7654321\",129" ,
1769     "+CIEV: 3,1" ,
1770     "USER:v" , //"AT+CHLD=2" ,
1771     "OK" ,
1772     "+CIEV: 3,0" ,
1773     "+CIEV: 4,1" ,
1774     "USER:w" , // "AT+CHLD=4" ,
1775     "OK" ,
1776     "+CIEV: 4,0" ,
1777     "+CIEV: 2,0"
1778 };
1779 
1780 
1781 hfp_test_item_t pts_hf_twc_tests[] = {
1782     TEST_SEQUENCE(TC_HF_TWC_BV_01_I),
1783     TEST_SEQUENCE(TC_HF_TWC_BV_02_I),
1784     TEST_SEQUENCE(TC_HF_TWC_BV_03_I),
1785     TEST_SEQUENCE(TC_HF_TWC_BV_04_I),
1786     TEST_SEQUENCE(TC_HF_TWC_BV_05_I),
1787     TEST_SEQUENCE(TC_HF_TWC_BV_06_I)
1788 };
1789 
1790 
1791 /* PTS test sequences - ECS Group */
1792 const char * TC_AG_ECS_BV_01_I[] = {
1793     "USER:c" ,
1794     "USER:e" ,
1795     "USER:m" ,
1796     "USER:e" ,
1797     "USER:a" ,
1798     "AT+BRSF=127" ,
1799     "+BRSF:4079" ,
1800     "OK" ,
1801     "AT+CIND=?" ,
1802     "+CIND:(\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0,3)),(\"battchg\",(0,5)),(\"signal\",(0,5)),(\"roam\",(0,1)),(\"callheld\",(0,2))" ,
1803     "OK" ,
1804     "AT+CIND?" ,
1805     "+CIND:1,1,0,3,5,0,1" ,
1806     "OK" ,
1807     "AT+CMER=3,0,0,1" ,
1808     "OK" ,
1809     "AT+CHLD=?" ,
1810     "+CHLD:(1,1x,2,2x,3)" ,
1811     "OK" ,
1812     "AT+VGS=9" ,
1813     "OK" ,
1814     "AT+VGM=9" ,
1815     "OK" ,
1816     "AT+CLIP=1" ,
1817     "OK" ,
1818     "AT+CCWA=1" ,
1819     "OK" ,
1820     "AT+CMEE=1" ,
1821     "OK" ,
1822     "AT+CLCC" ,
1823     "+CLCC: 1,1,1,0,0, \"1234567\",129" ,
1824     "+CLCC: 2,1,0,0,0, \"7654321\",129" ,
1825     "OK"
1826 };
1827 
1828 const char * TC_AG_ECS_BV_02_I[] = {
1829     "USER:c" ,
1830     "USER:e" ,
1831     "USER:m" ,
1832     "USER:e" ,
1833     "USER:a" ,
1834     "AT+BRSF=127" ,
1835     "+BRSF:4079" ,
1836     "OK" ,
1837     "AT+CIND=?" ,
1838     "+CIND:(\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0,3)),(\"battchg\",(0,5)),(\"signal\",(0,5)),(\"roam\",(0,1)),(\"callheld\",(0,2))" ,
1839     "OK" ,
1840     "AT+CIND?" ,
1841     "+CIND:1,1,0,3,5,0,1" ,
1842     "OK" ,
1843     "AT+CMER=3,0,0,1" ,
1844     "OK" ,
1845     "AT+CHLD=?" ,
1846     "+CHLD:(1,1x,2,2x,3)" ,
1847     "OK" ,
1848     "AT+VGS=9" ,
1849     "OK" ,
1850     "AT+VGM=9" ,
1851     "OK" ,
1852     "AT+CLIP=1" ,
1853     "OK" ,
1854     "AT+CCWA=1" ,
1855     "OK" ,
1856     "AT+CMEE=1" ,
1857     "OK"
1858 };
1859 
1860 const char * TC_AG_ECS_BV_03_I[] = {
1861     "USER:a" ,
1862     "AT+BRSF=127" ,
1863     "+BRSF:4079" ,
1864     "OK" ,
1865     "AT+CIND=?" ,
1866     "+CIND:(\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0,3)),(\"battchg\",(0,5)),(\"signal\",(0,5)),(\"roam\",(0,1)),(\"callheld\",(0,2))" ,
1867     "OK" ,
1868     "AT+CIND?" ,
1869     "+CIND:1,0,0,3,5,0,0" ,
1870     "OK" ,
1871     "AT+CMER=3,0,0,1" ,
1872     "OK" ,
1873     "AT+CHLD=?" ,
1874     "+CHLD:(1,1x,2,2x,3)" ,
1875     "OK" ,
1876     "AT+VGS=9" ,
1877     "OK" ,
1878     "AT+VGM=9" ,
1879     "OK" ,
1880     "AT+CLIP=1" ,
1881     "OK" ,
1882     "AT+CCWA=1" ,
1883     "OK" ,
1884     "AT+CMEE=1" ,
1885     "OK" ,
1886     "USER:c" ,
1887     "+CIEV:3,1" ,
1888     "RING" ,
1889     "+CLIP: \"1234567\",129" ,
1890     "ATA" ,
1891     "+CIEV:2,1" ,
1892     "+CIEV:3,0" ,
1893     "OK" ,
1894     "USER:m" ,
1895     "+CCWA: \"7654321\",129" ,
1896     "+CIEV:3,1" ,
1897     "USER:w" ,
1898     "USER:e" ,
1899     "+CIEV:3,0" ,
1900     "+CIEV:7,1"
1901 };
1902 
1903 hfp_test_item_t pts_ag_ecs_tests[] = {
1904     TEST_SEQUENCE(TC_AG_ECS_BV_01_I),
1905     TEST_SEQUENCE(TC_AG_ECS_BV_02_I),
1906     TEST_SEQUENCE(TC_AG_ECS_BV_03_I)
1907 };
1908 
1909 
1910 const char * TC_HF_ECS_BV_01_I[] = {
1911     "USER:a" ,
1912     "AT+BRSF=951" ,
1913     "+BRSF: 511" ,
1914     "OK" ,
1915     "AT+CIND=?" ,
1916     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
1917     "OK" ,
1918     "AT+CIND?" ,
1919     "+CIND: 1,1,0,1,5,0,5" ,
1920     "OK" ,
1921     "AT+CMER=3,0,0,1" ,
1922     "OK" ,
1923     "AT+CHLD=?" ,
1924     "+CHLD: (0,1,1x,2,2x,3,4)" ,
1925     "OK" ,
1926     "AT+VGM=9" ,
1927     "OK",
1928     "AT+VGS=9" ,
1929     "OK",
1930     "+BSIR: 0" ,
1931     "USER:X" , // "AT+CLCC" ,
1932     "+CLCC:1,1,1,0,0" ,
1933     "+CLCC:2,1,0,0,0" ,
1934     "OK" ,
1935     "+CIEV: 4,0" ,
1936     "+CIEV: 2,0"
1937 };
1938 
1939 const char * TC_HF_ECS_BV_02_I[] = {
1940     "USER:a" ,
1941     "AT+BRSF=951" ,
1942     "+BRSF: 511" ,
1943     "OK" ,
1944     "AT+CIND=?" ,
1945     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
1946     "OK" ,
1947     "AT+CIND?" ,
1948     "+CIND: 1,1,0,1,5,0,5" ,
1949     "OK" ,
1950     "AT+CMER=3,0,0,1" ,
1951     "OK" ,
1952     "AT+CHLD=?" ,
1953     "+CHLD: (0,1,1x,2,2x,3,4)" ,
1954     "OK" ,
1955     "AT+VGM=9" ,
1956     "OK",
1957     "AT+VGS=9" ,
1958     "OK",
1959     "+BSIR: 0" ,
1960     "+CIEV: 4,0" ,
1961     "+CIEV: 2,0"
1962 };
1963 
1964 const char * TC_HF_ECS_BV_03_I[] = {
1965     "USER:a" ,
1966     "AT+BRSF=951" ,
1967     "+BRSF: 511" ,
1968     "OK" ,
1969     "AT+CIND=?" ,
1970     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
1971     "OK" ,
1972     "AT+CIND?" ,
1973     "+CIND: 1,1,0,1,5,0,5" ,
1974     "OK" ,
1975     "AT+CMER=3,0,0,1" ,
1976     "OK" ,
1977     "AT+CHLD=?" ,
1978     "+CHLD: (0,1,1x,2,2x,3,4)" ,
1979     "OK" ,
1980     "AT+VGM=9" ,
1981     "OK",
1982     "AT+VGS=9" ,
1983     "OK",
1984     "+BSIR: 0" ,
1985     "+CIEV: 4,0" ,
1986     "+CIEV: 2,0" ,
1987     "AT+BRSF=951" ,
1988     "+BRSF: 511" ,
1989     "OK" ,
1990     "AT+CIND=?" ,
1991     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
1992     "OK" ,
1993     "AT+CIND?" ,
1994     "+CIND: 1,0,0,0,5,0,5" ,
1995     "OK" ,
1996     "AT+CMER=3,0,0,1" ,
1997     "OK" ,
1998     "AT+CHLD=?" ,
1999     "+CHLD: (0,1,1x,2,2x,3,4)" ,
2000     "OK" ,
2001     "AT+VGM=9" ,
2002     "OK",
2003     "AT+VGS=9" ,
2004     "OK",
2005     "+BSIR: 0" ,
2006     "+CIEV: 3,1" ,
2007     "RING" ,
2008     "RING" ,
2009     "RING" ,
2010     "RING" ,
2011     "USER:f" , //"ATA" ,
2012     "OK" ,
2013     "+CIEV: 2,1" ,
2014     "+CIEV: 3,0" ,
2015     "+CCWA: \"7654321\",129" ,
2016     "+CIEV: 3,1" ,
2017     "+CIEV: 3,0" ,
2018     "+CIEV: 4,1" ,
2019     "+CIEV: 4,0" ,
2020     "+CIEV: 2,0"
2021 };
2022 
2023 hfp_test_item_t pts_hf_ecs_tests[] = {
2024     TEST_SEQUENCE(TC_HF_ECS_BV_01_I),
2025     TEST_SEQUENCE(TC_HF_ECS_BV_02_I),
2026     TEST_SEQUENCE(TC_HF_ECS_BV_03_I)
2027 };
2028 
2029 
2030 /* PTS test sequences - ECC Group */
2031 const char * TC_AG_ECC_BV_01_I[] = {
2032     "USER:a" ,
2033     "AT+BRSF=127" ,
2034     "+BRSF:4079" ,
2035     "OK" ,
2036     "AT+CIND=?" ,
2037     "+CIND:(\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0,3)),(\"battchg\",(0,5)),(\"signal\",(0,5)),(\"roam\",(0,1)),(\"callheld\",(0,2))" ,
2038     "OK" ,
2039     "AT+CIND?" ,
2040     "+CIND:1,0,0,3,5,0,0" ,
2041     "OK" ,
2042     "AT+CMER=3,0,0,1" ,
2043     "OK" ,
2044     "AT+CHLD=?" ,
2045     "+CHLD:(1,1x,2,2x,3)" ,
2046     "OK" ,
2047     "AT+VGS=9" ,
2048     "OK" ,
2049     "AT+VGM=9" ,
2050     "OK" ,
2051     "AT+CLIP=1" ,
2052     "OK" ,
2053     "AT+CCWA=1" ,
2054     "OK" ,
2055     "AT+CMEE=1" ,
2056     "OK" ,
2057     "USER:c" ,
2058     "+CIEV:3,1" ,
2059     "RING" ,
2060     "+CLIP: \"1234567\",129" ,
2061     "ATA" ,
2062     "+CIEV:2,1" ,
2063     "+CIEV:3,0" ,
2064     "OK" ,
2065     "USER:m" ,
2066     "+CCWA: \"7654321\",129" ,
2067     "+CIEV:3,1" ,
2068     "AT+CHLD=2" ,
2069     "OK" ,
2070     "+CIEV:3,0" ,
2071     "+CIEV:7,1" ,
2072     "USER:u" ,
2073     "+CIEV:7,0" ,
2074     "AT+CLCC" ,
2075     "+CLCC: 1,1,0,0,1, \"1234567\",129" ,
2076     "+CLCC: 2,1,0,0,1, \"7654321\",129" ,
2077     "OK" ,
2078     "AT+CHLD=11" ,
2079     "OK" ,
2080     "USER:C" ,
2081     "+CIEV:2,0" ,
2082     "USER:t"
2083 };
2084 
2085 
2086 const char * TC_AG_ECC_BV_02_I[] = {
2087     "USER:a" ,
2088     "AT+BRSF=127" ,
2089     "+BRSF:4079" ,
2090     "OK" ,
2091     "AT+CIND=?" ,
2092     "+CIND:(\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0,3)),(\"battchg\",(0,5)),(\"signal\",(0,5)),(\"roam\",(0,1)),(\"callheld\",(0,2))" ,
2093     "OK" ,
2094     "AT+CIND?" ,
2095     "+CIND:1,0,0,3,5,0,0" ,
2096     "OK" ,
2097     "AT+CMER=3,0,0,1" ,
2098     "OK" ,
2099     "AT+CHLD=?" ,
2100     "+CHLD:(1,1x,2,2x,3)" ,
2101     "OK" ,
2102     "AT+VGS=9" ,
2103     "OK" ,
2104     "AT+VGM=9" ,
2105     "OK" ,
2106     "AT+CLIP=1" ,
2107     "OK" ,
2108     "AT+CCWA=1" ,
2109     "OK" ,
2110     "AT+CMEE=1" ,
2111     "OK" ,
2112     "USER:c" ,
2113     "+CIEV:3,1" ,
2114     "RING" ,
2115     "+CLIP: \"1234567\",129" ,
2116     "ATA" ,
2117     "+CIEV:2,1" ,
2118     "+CIEV:3,0" ,
2119     "OK" ,
2120     "USER:m" ,
2121     "+CCWA: \"7654321\",129" ,
2122     "+CIEV:3,1" ,
2123     "AT+CHLD=2" ,
2124     "OK" ,
2125     "+CIEV:3,0" ,
2126     "+CIEV:7,1" ,
2127     "AT+CHLD=3" ,
2128     "OK" ,
2129     "+CIEV:7,0" ,
2130     "AT+CLCC" ,
2131     "+CLCC: 1,1,0,0,1, \"1234567\",129" ,
2132     "+CLCC: 2,1,0,0,1, \"7654321\",129" ,
2133     "OK" ,
2134     "AT+CHLD=22" ,
2135     "OK" ,
2136     "+CIEV:7,1" ,
2137     "AT+CHLD=1" ,
2138     "OK" ,
2139     "+CIEV:7,0" ,
2140     "USER:C" ,
2141     "+CIEV:2,0" ,
2142     "USER:t"
2143 };
2144 
2145 
2146 hfp_test_item_t pts_ag_ecc_tests[] = {
2147     TEST_SEQUENCE(TC_AG_ECC_BV_01_I),
2148     TEST_SEQUENCE(TC_AG_ECC_BV_02_I)
2149 };
2150 
2151 const char * TC_HF_ECC_BV_01_I[] = {
2152     "AT+BRSF=951" ,
2153     "+BRSF: 511" ,
2154     "OK" ,
2155     "AT+CIND=?" ,
2156     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
2157     "OK" ,
2158     "AT+CIND?" ,
2159     "+CIND: 1,0,0,0,5,0,5" ,
2160     "OK" ,
2161     "AT+CMER=3,0,0,1" ,
2162     "OK" ,
2163     "AT+CHLD=?" ,
2164     "+CHLD: (0,1,1x,2,2x,3,4)" ,
2165     "OK" ,
2166     "AT+VGM=9" ,
2167     "OK",
2168     "AT+VGS=9" ,
2169     "OK",
2170     "+BSIR: 0" ,
2171     "+CIEV: 3,1" ,
2172     "RING" ,
2173     "RING" ,
2174     "USER:f" , //"ATA" ,
2175     "OK" ,
2176     "+CIEV: 2,1" ,
2177     "+CIEV: 3,0" ,
2178     "+CCWA: \"7654321\",129" ,
2179     "+CIEV: 3,1" ,
2180     "USER:v" , //"AT+CHLD=2" ,
2181     "OK" ,
2182     "+CIEV: 3,0" ,
2183     "+CIEV: 4,1" ,
2184     "+CIEV: 2,0" ,
2185     "AT+BRSF=951" ,
2186     "+BRSF: 511" ,
2187     "OK" ,
2188     "AT+CIND=?" ,
2189     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
2190     "OK" ,
2191     "AT+CIND?" ,
2192     "+CIND: 1,0,0,0,5,0,5" ,
2193     "OK" ,
2194     "AT+CMER=3,0,0,1" ,
2195     "OK" ,
2196     "AT+CHLD=?" ,
2197     "+CHLD: (0,1,1x,2,2x,3,4)" ,
2198     "OK" ,
2199     "AT+VGM=9" ,
2200     "OK",
2201     "AT+VGS=9" ,
2202     "OK",
2203     "+BSIR: 0" ,
2204     "+CIEV: 3,1" ,
2205     "RING" ,
2206     "RING" ,
2207     "USER:f" , //"ATA" ,
2208     "OK" ,
2209     "+CIEV: 2,1" ,
2210     "+CIEV: 3,0" ,
2211     "+CCWA: \"7654321\",129" ,
2212     "+CIEV: 3,1" ,
2213     "USER:v" , //"AT+CHLD=2" ,
2214     "OK" ,
2215     "+CIEV: 3,0" ,
2216     "+CIEV: 4,1" ,
2217     "+CIEV: 4,0" ,
2218     "USER:y" , // "AT+CHLD=12" ,
2219     "OK" ,
2220     "+CIEV: 4,1" ,
2221     "+CIEV: 4,0" ,
2222     "+CIEV: 2,0"
2223 };
2224 
2225 const char * TC_HF_ECC_BV_02_I[] = {
2226     "AT+BRSF=951" ,
2227     "+BRSF: 511" ,
2228     "OK" ,
2229     "AT+CIND=?" ,
2230     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
2231     "OK" ,
2232     "AT+CIND?" ,
2233     "+CIND: 1,0,0,0,5,0,5" ,
2234     "OK" ,
2235     "AT+CMER=3,0,0,1" ,
2236     "OK" ,
2237     "AT+CHLD=?" ,
2238     "+CHLD: (0,1,1x,2,2x,3,4)" ,
2239     "OK" ,
2240     "AT+VGM=9" ,
2241     "OK",
2242     "AT+VGS=9" ,
2243     "OK",
2244     "+BSIR: 0" ,
2245     "+CIEV: 3,1" ,
2246     "RING" ,
2247     "RING" ,
2248     "USER:f" , //"ATA" ,
2249     "OK" ,
2250     "+CIEV: 2,1" ,
2251     "+CIEV: 3,0" ,
2252     "+CCWA: \"7654321\",129" ,
2253     "+CIEV: 3,1" ,
2254     "USER:v" , //"AT+CHLD=2" ,
2255     "OK" ,
2256     "+CIEV: 3,0" ,
2257     "+CIEV: 4,1" ,
2258     "+CIEV: 2,0" ,
2259     "AT+BRSF=951" ,
2260     "+BRSF: 511" ,
2261     "OK" ,
2262     "AT+CIND=?" ,
2263     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
2264     "OK" ,
2265     "AT+CIND?" ,
2266     "+CIND: 1,0,0,0,5,0,5" ,
2267     "OK" ,
2268     "AT+CMER=3,0,0,1" ,
2269     "OK" ,
2270     "AT+CHLD=?" ,
2271     "+CHLD: (0,1,1x,2,2x,3,4)" ,
2272     "OK" ,
2273     "AT+VGM=9" ,
2274     "OK",
2275     "AT+VGS=9" ,
2276     "OK",
2277     "+BSIR: 0" ,
2278     "+CIEV: 3,1" ,
2279     "RING" ,
2280     "RING" ,
2281     "USER:f" , //"ATA" ,
2282     "OK" ,
2283     "+CIEV: 2,1" ,
2284     "+CIEV: 3,0" ,
2285     "+CCWA: \"7654321\",129" ,
2286     "+CIEV: 3,1" ,
2287     "USER:v" , //"AT+CHLD=2" ,
2288     "OK" ,
2289     "+CIEV: 3,0" ,
2290     "+CIEV: 4,1" ,
2291     "+CIEV: 4,0" ,
2292     "USER:y" , // "AT+CHLD=12" ,
2293     "OK" ,
2294     "+CIEV: 4,1" ,
2295     "+CIEV: 4,0" ,
2296     "+CIEV: 2,0" ,
2297     "AT+BRSF=951" ,
2298     "+BRSF: 511" ,
2299     "OK" ,
2300     "AT+CIND=?" ,
2301     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
2302     "OK" ,
2303     "AT+CIND?" ,
2304     "+CIND: 1,0,0,0,5,0,5" ,
2305     "OK" ,
2306     "AT+CMER=3,0,0,1" ,
2307     "OK" ,
2308     "AT+CHLD=?" ,
2309     "+CHLD: (0,1,1x,2,2x,3,4)" ,
2310     "OK" ,
2311     "AT+VGM=9" ,
2312     "OK",
2313     "AT+VGS=9" ,
2314     "OK",
2315     "+BSIR: 0" ,
2316     "+CIEV: 3,1" ,
2317     "RING" ,
2318     "RING" ,
2319     "USER:f" , //"ATA" ,
2320     "OK" ,
2321     "+CIEV: 2,1" ,
2322     "+CIEV: 3,0" ,
2323     "+CCWA: \"7654321\",129" ,
2324     "+CIEV: 3,1" ,
2325     "USER:v" , //"AT+CHLD=2" ,
2326     "OK" ,
2327     "+CIEV: 3,0" ,
2328     "+CIEV: 4,1" ,
2329     "+CIEV: 4,0" ,
2330     "USER:Y" , //"AT+CHLD=22" ,
2331     "OK" ,
2332     "+CIEV: 4,1" ,
2333     "USER:U" ,  // "AT+CHLD=1" ,
2334     "OK" ,
2335     "+CIEV: 4,0" ,
2336     "+CIEV: 2,0" ,
2337     "AT+BRSF=951" ,
2338     "+BRSF: 511" ,
2339     "OK" ,
2340     "AT+CIND=?" ,
2341     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
2342     "OK" ,
2343     "AT+CIND?" ,
2344     "+CIND: 1,0,0,0,5,0,5" ,
2345     "OK" ,
2346     "AT+CMER=3,0,0,1" ,
2347     "OK" ,
2348     "AT+CHLD=?" ,
2349     "+CHLD: (0,1,1x,2,2x,3,4)" ,
2350     "OK" ,
2351     "USER:Q", // "AT+VGM=9" ,
2352     "OK" ,
2353     "USER:O",  // "AT+VGS=9" ,
2354     "+BSIR: 0" ,
2355     "OK" ,
2356     "+CIEV: 3,1" ,
2357     "RING" ,
2358     "RING" ,
2359     "USER:f" , //"ATA" ,
2360     "OK" ,
2361     "+CIEV: 2,1" ,
2362     "+CIEV: 3,0" ,
2363     "+CCWA: \"7654321\",129" ,
2364     "+CIEV: 3,1" ,
2365     "USER:v" , //"AT+CHLD=2" ,
2366     "OK" ,
2367     "+CIEV: 3,0" ,
2368     "+CIEV: 4,1" ,
2369     "+CIEV: 4,0" ,
2370     "USER:Y" , //"AT+CHLD=22" ,
2371     "OK" ,
2372     "+CIEV: 4,1" ,
2373     "USER:U" ,  // "AT+CHLD=1" ,
2374     "OK" ,
2375     "+CIEV: 4,0" ,
2376     "+CIEV: 2,0"
2377 };
2378 
2379 hfp_test_item_t pts_hf_ecc_tests[] = {
2380     TEST_SEQUENCE(TC_HF_ECC_BV_01_I),
2381     TEST_SEQUENCE(TC_HF_ECC_BV_02_I)
2382 };
2383 
2384 
2385 /* PTS test sequences - RHH Group */
2386 const char * TC_AG_RHH_BV_01_I[] = {
2387     "USER:c" ,
2388     "USER:w" ,
2389     "USER:a",
2390     "AT+BRSF=127" ,
2391     "+BRSF:4079" ,
2392     "OK" ,
2393     "AT+CIND=?" ,
2394     "+CIND:(\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0,3)),(\"battchg\",(0,5)),(\"signal\",(0,5)),(\"roam\",(0,1)),(\"callheld\",(0,2))" ,
2395     "OK" ,
2396     "AT+CIND?" ,
2397     "+CIND:1,1,0,3,5,0,0" ,
2398     "OK" ,
2399     "AT+CMER=3,0,0,1" ,
2400     "OK" ,
2401     "AT+CHLD=?" ,
2402     "+CHLD:(1,1x,2,2x,3)" ,
2403     "OK" ,
2404     "AT+VGS=9" ,
2405     "OK" ,
2406     "AT+VGM=9" ,
2407     "OK" ,
2408     "AT+CLIP=1" ,
2409     "OK" ,
2410     "AT+CCWA=1" ,
2411     "OK" ,
2412     "AT+CMEE=1" ,
2413     "OK" ,
2414     "AT+BTRH?" ,
2415     "+BTRH: 0" ,
2416     "OK" ,
2417     "USER:X" ,
2418     "+BTRH: 2" ,
2419     "+CIEV:2,0" ,
2420     "USER:t"
2421 };
2422 
2423 const char * TC_AG_RHH_BV_02_I[] = {
2424     "USER:a" ,
2425     "AT+BRSF=127" ,
2426     "+BRSF:4079" ,
2427     "OK" ,
2428     "AT+CIND=?" ,
2429     "+CIND:(\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0,3)),(\"battchg\",(0,5)),(\"signal\",(0,5)),(\"roam\",(0,1)),(\"callheld\",(0,2))" ,
2430     "OK" ,
2431     "AT+CIND?" ,
2432     "+CIND:1,0,0,3,5,0,0" ,
2433     "OK" ,
2434     "AT+CMER=3,0,0,1" ,
2435     "OK" ,
2436     "AT+CHLD=?" ,
2437     "+CHLD:(1,1x,2,2x,3)" ,
2438     "OK" ,
2439     "AT+VGS=9" ,
2440     "OK" ,
2441     "AT+VGM=9" ,
2442     "OK" ,
2443     "AT+CLIP=1" ,
2444     "OK" ,
2445     "AT+CCWA=1" ,
2446     "OK" ,
2447     "AT+CMEE=1" ,
2448     "OK" ,
2449     "USER:c" ,
2450     "+CIEV:3,1" ,
2451     "RING" ,
2452     "+CLIP: \"1234567\",129" ,
2453     "AT+BTRH=0" ,
2454     "+BTRH: 0" ,
2455     "+CIEV:2,1" ,
2456     "+CIEV:3,0" ,
2457     "OK",
2458     "USER:X" ,
2459     "+BTRH: 2" ,
2460     "+CIEV:2,0" ,
2461     "USER:t"
2462 };
2463 
2464 const char * TC_AG_RHH_BV_03_I[] = {
2465     "USER:a" ,
2466     "AT+BRSF=127" ,
2467     "+BRSF:4079" ,
2468     "OK" ,
2469     "AT+CIND=?" ,
2470     "+CIND:(\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0,3)),(\"battchg\",(0,5)),(\"signal\",(0,5)),(\"roam\",(0,1)),(\"callheld\",(0,2))" ,
2471     "OK" ,
2472     "AT+CIND?" ,
2473     "+CIND:1,0,0,3,5,0,0" ,
2474     "OK" ,
2475     "AT+CMER=3,0,0,1" ,
2476     "OK" ,
2477     "AT+CHLD=?" ,
2478     "+CHLD:(1,1x,2,2x,3)" ,
2479     "OK" ,
2480     "AT+VGS=9" ,
2481     "OK" ,
2482     "AT+VGM=9" ,
2483     "OK" ,
2484     "AT+CLIP=1" ,
2485     "OK" ,
2486     "AT+CCWA=1" ,
2487     "OK" ,
2488     "AT+CMEE=1" ,
2489     "OK" ,
2490     "USER:c" ,
2491     "+CIEV:3,1" ,
2492     "RING" ,
2493     "+CLIP: \"1234567\",129" ,
2494     "USER:w" ,
2495     "+BTRH: 0" ,
2496     "+CIEV:2,1" ,
2497     "+CIEV:3,0" ,
2498     "USER:X" ,
2499     "+BTRH: 2" ,
2500     "+CIEV:2,0" ,
2501     "USER:t"
2502 };
2503 
2504 const char * TC_AG_RHH_BV_04_I[] = {
2505     "USER:c" ,
2506     "USER:w" ,
2507     "USER:a" ,
2508     "AT+BRSF=127" ,
2509     "+BRSF:4079" ,
2510     "OK" ,
2511     "AT+CIND=?" ,
2512     "+CIND:(\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0,3)),(\"battchg\",(0,5)),(\"signal\",(0,5)),(\"roam\",(0,1)),(\"callheld\",(0,2))" ,
2513     "OK" ,
2514     "AT+CIND?" ,
2515     "+CIND:1,1,0,3,5,0,0" ,
2516     "OK" ,
2517     "AT+CMER=3,0,0,1" ,
2518     "OK" ,
2519     "AT+CHLD=?" ,
2520     "+CHLD:(1,1x,2,2x,3)" ,
2521     "OK" ,
2522     "AT+VGS=9" ,
2523     "OK" ,
2524     "AT+VGM=9" ,
2525     "OK" ,
2526     "AT+CLIP=1" ,
2527     "OK" ,
2528     "AT+CCWA=1" ,
2529     "OK" ,
2530     "AT+CMEE=1" ,
2531     "OK" ,
2532     "AT+BTRH?" ,
2533     "+BTRH: 0" ,
2534     "OK" ,
2535     "AT+BTRH=1" ,
2536     "+BTRH: 1" ,
2537     "OK" ,
2538     "USER:b" ,
2539     "USER:C" ,
2540     "+CIEV:2,0" ,
2541     "USER:t"
2542 };
2543 
2544 const char * TC_AG_RHH_BV_05_I[] = {
2545     "USER:c" ,
2546     "USER:w" ,
2547     "USER:a" ,
2548     "AT+BRSF=127" ,
2549     "+BRSF:4079" ,
2550     "OK" ,
2551     "AT+CIND=?" ,
2552     "+CIND:(\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0,3)),(\"battchg\",(0,5)),(\"signal\",(0,5)),(\"roam\",(0,1)),(\"callheld\",(0,2))" ,
2553     "OK" ,
2554     "AT+CIND?" ,
2555     "+CIND:1,1,0,3,5,0,0" ,
2556     "OK" ,
2557     "AT+CMER=3,0,0,1" ,
2558     "OK" ,
2559     "AT+CHLD=?" ,
2560     "+CHLD:(1,1x,2,2x,3)" ,
2561     "OK" ,
2562     "AT+VGS=9" ,
2563     "OK" ,
2564     "AT+VGM=9" ,
2565     "OK" ,
2566     "AT+CLIP=1" ,
2567     "OK" ,
2568     "AT+CCWA=1" ,
2569     "OK" ,
2570     "AT+CMEE=1" ,
2571     "OK" ,
2572     "AT+BTRH?" ,
2573     "+BTRH: 0" ,
2574     "OK" ,
2575     "USER:x" ,
2576     "+BTRH: 1" ,
2577     "USER:C" ,
2578     "+CIEV:2,0" ,
2579     "USER:t"
2580 };
2581 
2582 const char * TC_AG_RHH_BV_06_I[] = {
2583     "USER:c" ,
2584     "USER:w" ,
2585     "USER:a" ,
2586     "AT+BRSF=127" ,
2587     "+BRSF:4079" ,
2588     "OK" ,
2589     "AT+CIND=?" ,
2590     "+CIND:(\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0,3)),(\"battchg\",(0,5)),(\"signal\",(0,5)),(\"roam\",(0,1)),(\"callheld\",(0,2))" ,
2591     "OK" ,
2592     "AT+CIND?" ,
2593     "+CIND:1,1,0,3,5,0,0" ,
2594     "OK" ,
2595     "AT+CMER=3,0,0,1" ,
2596     "OK" ,
2597     "AT+CHLD=?" ,
2598     "+CHLD:(1,1x,2,2x,3)" ,
2599     "OK" ,
2600     "AT+VGS=9" ,
2601     "OK" ,
2602     "AT+VGM=9" ,
2603     "OK" ,
2604     "AT+CLIP=1" ,
2605     "OK" ,
2606     "AT+CCWA=1" ,
2607     "OK" ,
2608     "AT+CMEE=1" ,
2609     "OK" ,
2610     "AT+BTRH?" ,
2611     "+BTRH: 0" ,
2612     "OK" ,
2613     "AT+BTRH=2" ,
2614     "+BTRH: 2" ,
2615     "+CIEV:2,0" ,
2616     "OK" ,
2617     "USER:t"
2618 };
2619 
2620 const char * TC_AG_RHH_BV_07_I[] = {
2621     "USER:c" ,
2622     "USER:w" ,
2623     "USER:a" ,
2624     "AT+BRSF=127" ,
2625     "+BRSF:4079" ,
2626     "OK" ,
2627     "AT+CIND=?" ,
2628     "+CIND:(\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0,3)),(\"battchg\",(0,5)),(\"signal\",(0,5)),(\"roam\",(0,1)),(\"callheld\",(0,2))" ,
2629     "OK" ,
2630     "AT+CIND?" ,
2631     "+CIND:1,1,0,3,5,0,0" ,
2632     "OK" ,
2633     "AT+CMER=3,0,0,1" ,
2634     "OK" ,
2635     "AT+CHLD=?" ,
2636     "+CHLD:(1,1x,2,2x,3)" ,
2637     "OK" ,
2638     "AT+VGS=9" ,
2639     "OK" ,
2640     "AT+VGM=9" ,
2641     "OK" ,
2642     "AT+CLIP=1" ,
2643     "OK" ,
2644     "AT+CCWA=1" ,
2645     "OK" ,
2646     "AT+CMEE=1" ,
2647     "OK" ,
2648     "AT+BTRH?" ,
2649     "+BTRH: 0" ,
2650     "OK" ,
2651     "USER:X" ,
2652     "+BTRH: 2" ,
2653     "+CIEV:2,0" ,
2654     "USER:t"
2655 };
2656 
2657 const char * TC_AG_RHH_BV_08_I[] = {
2658     "USER:c" ,
2659     "USER:w" ,
2660     "USER:a" ,
2661     "AT+BRSF=127" ,
2662     "+BRSF:4079" ,
2663     "OK" ,
2664     "AT+CIND=?" ,
2665     "+CIND:(\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0,3)),(\"battchg\",(0,5)),(\"signal\",(0,5)),(\"roam\",(0,1)),(\"callheld\",(0,2))" ,
2666     "OK" ,
2667     "AT+CIND?" ,
2668     "+CIND:1,1,0,3,5,0,0" ,
2669     "OK" ,
2670     "AT+CMER=3,0,0,1" ,
2671     "OK" ,
2672     "AT+CHLD=?" ,
2673     "+CHLD:(1,1x,2,2x,3)" ,
2674     "OK" ,
2675     "AT+VGS=9" ,
2676     "OK" ,
2677     "AT+VGM=9" ,
2678     "OK" ,
2679     "AT+CLIP=1" ,
2680     "OK" ,
2681     "AT+CCWA=1" ,
2682     "OK" ,
2683     "AT+CMEE=1" ,
2684     "OK" ,
2685     "AT+BTRH?" ,
2686     "+BTRH: 0" ,
2687     "OK" ,
2688     "USER:C" ,
2689     "+BTRH: 2" ,
2690     "+CIEV:2,0" ,
2691     "USER:t"
2692 };
2693 
2694 
2695 hfp_test_item_t pts_ag_rhh_tests[] = {
2696     TEST_SEQUENCE(TC_AG_RHH_BV_01_I),
2697     TEST_SEQUENCE(TC_AG_RHH_BV_02_I),
2698     TEST_SEQUENCE(TC_AG_RHH_BV_03_I),
2699     TEST_SEQUENCE(TC_AG_RHH_BV_04_I),
2700     TEST_SEQUENCE(TC_AG_RHH_BV_05_I),
2701     TEST_SEQUENCE(TC_AG_RHH_BV_06_I),
2702     TEST_SEQUENCE(TC_AG_RHH_BV_07_I),
2703     TEST_SEQUENCE(TC_AG_RHH_BV_08_I)
2704 };
2705 
2706 const char * TC_HF_RHH_BV_01_I[] = {
2707     "USER:a" ,
2708     "AT+BRSF=951" ,
2709     "+BRSF: 511" ,
2710     "OK" ,
2711     "AT+CIND=?" ,
2712     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
2713     "OK" ,
2714     "AT+CIND?" ,
2715     "+CIND: 1,1,0,0,5,0,5" ,
2716     "OK" ,
2717     "AT+CMER=3,0,0,1" ,
2718     "OK" ,
2719     "AT+CHLD=?" ,
2720     "+CHLD: (0,1,1x,2,2x,3,4)" ,
2721     "OK" ,
2722     "AT+VGM=9" ,
2723     "OK",
2724     "AT+VGS=9" ,
2725     "OK",
2726     "+BSIR: 0" ,
2727     "+BTRH: 2" ,
2728     "+CIEV: 2,0"
2729 };
2730 
2731 const char * TC_HF_RHH_BV_02_I[] = {
2732     "USER:a" ,
2733     "AT+BRSF=951" ,
2734     "+BRSF: 511" ,
2735     "OK" ,
2736     "AT+CIND=?" ,
2737     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
2738     "OK" ,
2739     "AT+CIND?" ,
2740     "+CIND: 1,1,0,0,5,0,5" ,
2741     "OK" ,
2742     "AT+CMER=3,0,0,1" ,
2743     "OK" ,
2744     "AT+CHLD=?" ,
2745     "+CHLD: (0,1,1x,2,2x,3,4)" ,
2746     "OK" ,
2747     "AT+VGM=9" ,
2748     "OK",
2749     "AT+VGS=9" ,
2750     "OK",
2751     "+BSIR: 0" ,
2752     "+BTRH: 2" ,
2753     "+CIEV: 2,0" ,
2754     "AT+BRSF=951" ,
2755     "+BRSF: 511" ,
2756     "OK" ,
2757     "AT+CIND=?" ,
2758     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
2759     "OK" ,
2760     "AT+CIND?" ,
2761     "+CIND: 1,0,0,0,5,0,5" ,
2762     "OK" ,
2763     "AT+CMER=3,0,0,1" ,
2764     "OK" ,
2765     "AT+CHLD=?" ,
2766     "+CHLD: (0,1,1x,2,2x,3,4)" ,
2767     "OK" ,
2768     "AT+VGM=9" ,
2769     "OK",
2770     "AT+VGS=9" ,
2771     "OK",
2772     "+BSIR: 0" ,
2773     "+CIEV: 3,1" ,
2774     "RING" ,
2775     "RING" ,
2776     "RING" ,
2777     "RING" ,
2778     "RING" ,
2779     "USER:f" , //"ATA" ,
2780     "OK" ,
2781     "+CIEV: 2,1" ,
2782     "+CIEV: 3,0" ,
2783     "AT+BRSF=951" ,
2784     "+BRSF: 511" ,
2785     "OK" ,
2786     "AT+CIND=?" ,
2787     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
2788     "OK" ,
2789     "AT+CIND?" ,
2790     "+CIND: 1,0,0,0,5,0,5" ,
2791     "OK" ,
2792     "AT+CMER=3,0,0,1" ,
2793     "OK" ,
2794     "AT+CHLD=?" ,
2795     "+CHLD: (0,1,1x,2,2x,3,4)" ,
2796     "OK" ,
2797     "AT+VGM=9" ,
2798     "OK",
2799     "AT+VGS=9" ,
2800     "OK",
2801     "+BSIR: 0" ,
2802     "+CIEV: 3,1" ,
2803     "RING" ,
2804     "USER:i" , // "ATD1234567;" ,
2805     "AT+BRSF=951" ,
2806     "+BRSF: 511" ,
2807     "OK" ,
2808     "AT+CIND=?" ,
2809     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
2810     "OK" ,
2811     "AT+CIND?" ,
2812     "+CIND: 1,0,0,0,5,0,5" ,
2813     "OK" ,
2814     "AT+CMER=3,0,0,1" ,
2815     "OK" ,
2816     "AT+CHLD=?" ,
2817     "+CHLD: (0,1,1x,2,2x,3,4)" ,
2818     "OK" ,
2819     "AT+VGM=9" ,
2820     "OK",
2821     "AT+VGS=9" ,
2822     "OK",
2823     "+BSIR: 0" ,
2824     "+CIEV: 3,1" ,
2825     "RING" ,
2826     "USER:I" , // "ATD // 21;" ,
2827     "AT+BRSF=951" ,
2828     "+BRSF: 511" ,
2829     "OK" ,
2830     "AT+CIND=?" ,
2831     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
2832     "OK" ,
2833     "AT+CIND?" ,
2834     "+CIND: 1,0,0,0,5,0,5" ,
2835     "OK" ,
2836     "AT+CMER=3,0,0,1" ,
2837     "OK" ,
2838     "AT+CHLD=?" ,
2839     "+CHLD: (0,1,1x,2,2x,3,4)" ,
2840     "OK" ,
2841     "AT+VGM=9" ,
2842     "OK",
2843     "AT+VGS=9" ,
2844     "OK",
2845     "+BSIR: 0" ,
2846     "+CIEV: 3,1" ,
2847     "RING" ,
2848     "RING" ,
2849     "USER:]" , // "AT+BTRH=0" ,
2850     "+BTRH: 0" ,
2851     "OK" ,
2852     "+CIEV: 2,1" ,
2853     "+CIEV: 3,0" ,
2854     "+BTRH: 2" ,
2855     "+CIEV: 2,0"
2856 };
2857 
2858 const char * TC_HF_RHH_BV_03_I[] = {
2859     "USER:a" ,
2860     "AT+BRSF=951" ,
2861     "+BRSF: 511" ,
2862     "OK" ,
2863     "AT+CIND=?" ,
2864     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
2865     "OK" ,
2866     "AT+CIND?" ,
2867     "+CIND: 1,1,0,0,5,0,5" ,
2868     "OK" ,
2869     "AT+CMER=3,0,0,1" ,
2870     "OK" ,
2871     "AT+CHLD=?" ,
2872     "+CHLD: (0,1,1x,2,2x,3,4)" ,
2873     "OK" ,
2874     "AT+VGM=9" ,
2875     "OK",
2876     "AT+VGS=9" ,
2877     "OK",
2878     "+BSIR: 0" ,
2879     "+BTRH: 2" ,
2880     "+CIEV: 2,0" ,
2881     "AT+BRSF=951" ,
2882     "+BRSF: 511" ,
2883     "OK" ,
2884     "AT+CIND=?" ,
2885     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
2886     "OK" ,
2887     "AT+CIND?" ,
2888     "+CIND: 1,0,0,0,5,0,5" ,
2889     "OK" ,
2890     "AT+CMER=3,0,0,1" ,
2891     "OK" ,
2892     "AT+CHLD=?" ,
2893     "+CHLD: (0,1,1x,2,2x,3,4)" ,
2894     "OK" ,
2895     "AT+VGM=9" ,
2896     "OK",
2897     "AT+VGS=9" ,
2898     "OK",
2899     "+BSIR: 0" ,
2900     "+CIEV: 3,1" ,
2901     "RING" ,
2902     "RING" ,
2903     "RING" ,
2904     "RING" ,
2905     "RING" ,
2906     "USER:f" , //"ATA" ,
2907     "OK" ,
2908     "+CIEV: 2,1" ,
2909     "+CIEV: 3,0" ,
2910     "AT+BRSF=951" ,
2911     "+BRSF: 511" ,
2912     "OK" ,
2913     "AT+CIND=?" ,
2914     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
2915     "OK" ,
2916     "AT+CIND?" ,
2917     "+CIND: 1,0,0,0,5,0,5" ,
2918     "OK" ,
2919     "AT+CMER=3,0,0,1" ,
2920     "OK" ,
2921     "AT+CHLD=?" ,
2922     "+CHLD: (0,1,1x,2,2x,3,4)" ,
2923     "OK" ,
2924     "AT+VGM=9" ,
2925     "OK",
2926     "AT+VGS=9" ,
2927     "OK",
2928     "+BSIR: 0" ,
2929     "+CIEV: 3,1" ,
2930     "RING" ,
2931     "USER:i" , // "ATD1234567;" ,
2932     "AT+BRSF=951" ,
2933     "+BRSF: 511" ,
2934     "OK" ,
2935     "AT+CIND=?" ,
2936     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
2937     "OK" ,
2938     "AT+CIND?" ,
2939     "+CIND: 1,0,0,0,5,0,5" ,
2940     "OK" ,
2941     "AT+CMER=3,0,0,1" ,
2942     "OK" ,
2943     "AT+CHLD=?" ,
2944     "+CHLD: (0,1,1x,2,2x,3,4)" ,
2945     "OK" ,
2946     "AT+VGM=9" ,
2947     "OK",
2948     "AT+VGS=9" ,
2949     "OK",
2950     "+BSIR: 0" ,
2951     "+CIEV: 3,1" ,
2952     "RING" ,
2953     "USER:I" , // "ATD // 21;" ,
2954     "AT+BRSF=951" ,
2955     "+BRSF: 511" ,
2956     "OK" ,
2957     "AT+CIND=?" ,
2958     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
2959     "OK" ,
2960     "AT+CIND?" ,
2961     "+CIND: 1,0,0,0,5,0,5" ,
2962     "OK" ,
2963     "AT+CMER=3,0,0,1" ,
2964     "OK" ,
2965     "AT+CHLD=?" ,
2966     "+CHLD: (0,1,1x,2,2x,3,4)" ,
2967     "OK" ,
2968     "AT+VGM=9" ,
2969     "OK",
2970     "AT+VGS=9" ,
2971     "OK",
2972     "+BSIR: 0" ,
2973     "+CIEV: 3,1" ,
2974     "RING" ,
2975     "RING" ,
2976     "USER:]" , // "AT+BTRH=0" ,
2977     "+BTRH: 0" ,
2978     "OK" ,
2979     "+CIEV: 2,1" ,
2980     "+CIEV: 3,0" ,
2981     "+BTRH: 2" ,
2982     "+CIEV: 2,0" ,
2983     "AT+BRSF=951" ,
2984     "+BRSF: 511" ,
2985     "OK" ,
2986     "AT+CIND=?" ,
2987     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
2988     "OK" ,
2989     "AT+CIND?" ,
2990     "+CIND: 1,0,0,0,5,0,5" ,
2991     "OK" ,
2992     "AT+CMER=3,0,0,1" ,
2993     "OK" ,
2994     "AT+CHLD=?" ,
2995     "+CHLD: (0,1,1x,2,2x,3,4)" ,
2996     "OK" ,
2997     "AT+VGM=9" ,
2998     "OK",
2999     "AT+VGS=9" ,
3000     "OK",
3001     "+BSIR: 0" ,
3002     "+CIEV: 3,1" ,
3003     "RING" ,
3004     "+CLIP: \"1234567\",129" ,
3005     "+BTRH: 0" ,
3006     "+CIEV: 2,1" ,
3007     "+CIEV: 3,0" ,
3008     "+BTRH: 2" ,
3009     "+CIEV: 2,0"
3010 };
3011 
3012 const char * TC_HF_RHH_BV_04_I[] = {
3013     "USER:a" ,
3014     "AT+BRSF=951" ,
3015     "+BRSF: 511" ,
3016     "OK" ,
3017     "AT+CIND=?" ,
3018     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
3019     "OK" ,
3020     "AT+CIND?" ,
3021     "+CIND: 1,1,0,0,5,0,5" ,
3022     "OK" ,
3023     "AT+CMER=3,0,0,1" ,
3024     "OK" ,
3025     "AT+CHLD=?" ,
3026     "+CHLD: (0,1,1x,2,2x,3,4)" ,
3027     "OK" ,
3028     "AT+VGM=9" ,
3029     "OK",
3030     "AT+VGS=9" ,
3031     "OK",
3032     "+BSIR: 0" ,
3033     "+BTRH: 2" ,
3034     "+CIEV: 2,0" ,
3035     "AT+BRSF=951" ,
3036     "+BRSF: 511" ,
3037     "OK" ,
3038     "AT+CIND=?" ,
3039     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
3040     "OK" ,
3041     "AT+CIND?" ,
3042     "+CIND: 1,0,0,0,5,0,5" ,
3043     "OK" ,
3044     "AT+CMER=3,0,0,1" ,
3045     "OK" ,
3046     "AT+CHLD=?" ,
3047     "+CHLD: (0,1,1x,2,2x,3,4)" ,
3048     "OK" ,
3049     "AT+VGM=9" ,
3050     "OK",
3051     "AT+VGS=9" ,
3052     "OK",
3053     "+BSIR: 0" ,
3054     "+CIEV: 3,1" ,
3055     "RING" ,
3056     "RING" ,
3057     "RING" ,
3058     "RING" ,
3059     "RING" ,
3060     "USER:f" , //"ATA" ,
3061     "OK" ,
3062     "+CIEV: 2,1" ,
3063     "+CIEV: 3,0" ,
3064     "AT+BRSF=951" ,
3065     "+BRSF: 511" ,
3066     "OK" ,
3067     "AT+CIND=?" ,
3068     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
3069     "OK" ,
3070     "AT+CIND?" ,
3071     "+CIND: 1,0,0,0,5,0,5" ,
3072     "OK" ,
3073     "AT+CMER=3,0,0,1" ,
3074     "OK" ,
3075     "AT+CHLD=?" ,
3076     "+CHLD: (0,1,1x,2,2x,3,4)" ,
3077     "OK" ,
3078     "AT+VGM=9" ,
3079     "OK",
3080     "AT+VGS=9" ,
3081     "OK",
3082     "+BSIR: 0" ,
3083     "+CIEV: 3,1" ,
3084     "RING" ,
3085     "USER:i" , // "ATD1234567;" ,
3086     "AT+BRSF=951" ,
3087     "+BRSF: 511" ,
3088     "OK" ,
3089     "AT+CIND=?" ,
3090     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
3091     "OK" ,
3092     "AT+CIND?" ,
3093     "+CIND: 1,0,0,0,5,0,5" ,
3094     "OK" ,
3095     "AT+CMER=3,0,0,1" ,
3096     "OK" ,
3097     "AT+CHLD=?" ,
3098     "+CHLD: (0,1,1x,2,2x,3,4)" ,
3099     "OK" ,
3100     "AT+VGM=9" ,
3101     "OK",
3102     "AT+VGS=9" ,
3103     "OK",
3104     "+BSIR: 0" ,
3105     "+CIEV: 3,1" ,
3106     "RING" ,
3107     "USER:I" , // "ATD // 21;" ,
3108     "AT+BRSF=951" ,
3109     "+BRSF: 511" ,
3110     "OK" ,
3111     "AT+CIND=?" ,
3112     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
3113     "OK" ,
3114     "AT+CIND?" ,
3115     "+CIND: 1,0,0,0,5,0,5" ,
3116     "OK" ,
3117     "AT+CMER=3,0,0,1" ,
3118     "OK" ,
3119     "AT+CHLD=?" ,
3120     "+CHLD: (0,1,1x,2,2x,3,4)" ,
3121     "OK" ,
3122     "AT+VGM=9" ,
3123     "OK",
3124     "AT+VGS=9" ,
3125     "OK",
3126     "+BSIR: 0" ,
3127     "+CIEV: 3,1" ,
3128     "RING" ,
3129     "RING" ,
3130     "USER:]" , // "AT+BTRH=0" ,
3131     "+BTRH: 0" ,
3132     "OK" ,
3133     "+CIEV: 2,1" ,
3134     "+CIEV: 3,0" ,
3135     "+BTRH: 2" ,
3136     "+CIEV: 2,0" ,
3137     "AT+BRSF=951" ,
3138     "+BRSF: 511" ,
3139     "OK" ,
3140     "AT+CIND=?" ,
3141     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
3142     "OK" ,
3143     "AT+CIND?" ,
3144     "+CIND: 1,0,0,0,5,0,5" ,
3145     "OK" ,
3146     "AT+CMER=3,0,0,1" ,
3147     "OK" ,
3148     "AT+CHLD=?" ,
3149     "+CHLD: (0,1,1x,2,2x,3,4)" ,
3150     "OK" ,
3151     "AT+VGM=9" ,
3152     "OK",
3153     "AT+VGS=9" ,
3154     "OK",
3155     "+BSIR: 0" ,
3156     "+CIEV: 3,1" ,
3157     "RING" ,
3158     "+CLIP: \"1234567\",129" ,
3159     "+BTRH: 0" ,
3160     "+CIEV: 2,1" ,
3161     "+CIEV: 3,0" ,
3162     "+BTRH: 2" ,
3163     "+CIEV: 2,0" ,
3164     "AT+BRSF=951" ,
3165     "+BRSF: 511" ,
3166     "OK" ,
3167     "AT+CIND=?" ,
3168     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
3169     "OK" ,
3170     "AT+CIND?" ,
3171     "+CIND: 1,1,0,0,5,0,5" ,
3172     "OK" ,
3173     "AT+CMER=3,0,0,1" ,
3174     "OK" ,
3175     "AT+CHLD=?" ,
3176     "+CHLD: (0,1,1x,2,2x,3,4)" ,
3177     "OK" ,
3178     "AT+VGM=9" ,
3179     "OK",
3180     "AT+VGS=9" ,
3181     "OK",
3182     "+BSIR: 0" ,
3183     "USER:{" , // "AT+BTRH=1" ,
3184     "+BTRH: 1" ,
3185     "OK" ,
3186     "+CIEV: 2,0"
3187 };
3188 
3189 const char * TC_HF_RHH_BV_05_I[] = {
3190     "USER:a" ,
3191     "AT+BRSF=951" ,
3192     "+BRSF: 511" ,
3193     "OK" ,
3194     "AT+CIND=?" ,
3195     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
3196     "OK" ,
3197     "AT+CIND?" ,
3198     "+CIND: 1,1,0,0,5,0,5" ,
3199     "OK" ,
3200     "AT+CMER=3,0,0,1" ,
3201     "OK" ,
3202     "AT+CHLD=?" ,
3203     "+CHLD: (0,1,1x,2,2x,3,4)" ,
3204     "OK" ,
3205     "AT+VGM=9" ,
3206     "OK",
3207     "AT+VGS=9" ,
3208     "OK",
3209     "+BSIR: 0" ,
3210     "+BTRH: 2" ,
3211     "+CIEV: 2,0" ,
3212     "AT+BRSF=951" ,
3213     "+BRSF: 511" ,
3214     "OK" ,
3215     "AT+CIND=?" ,
3216     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
3217     "OK" ,
3218     "AT+CIND?" ,
3219     "+CIND: 1,0,0,0,5,0,5" ,
3220     "OK" ,
3221     "AT+CMER=3,0,0,1" ,
3222     "OK" ,
3223     "AT+CHLD=?" ,
3224     "+CHLD: (0,1,1x,2,2x,3,4)" ,
3225     "OK" ,
3226     "AT+VGM=9" ,
3227     "OK",
3228     "AT+VGS=9" ,
3229     "OK",
3230     "+BSIR: 0" ,
3231     "+CIEV: 3,1" ,
3232     "RING" ,
3233     "RING" ,
3234     "RING" ,
3235     "RING" ,
3236     "RING" ,
3237     "USER:f" , //"ATA" ,
3238     "OK" ,
3239     "+CIEV: 2,1" ,
3240     "+CIEV: 3,0" ,
3241     "AT+BRSF=951" ,
3242     "+BRSF: 511" ,
3243     "OK" ,
3244     "AT+CIND=?" ,
3245     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
3246     "OK" ,
3247     "AT+CIND?" ,
3248     "+CIND: 1,0,0,0,5,0,5" ,
3249     "OK" ,
3250     "AT+CMER=3,0,0,1" ,
3251     "OK" ,
3252     "AT+CHLD=?" ,
3253     "+CHLD: (0,1,1x,2,2x,3,4)" ,
3254     "OK" ,
3255     "AT+VGM=9" ,
3256     "OK",
3257     "AT+VGS=9" ,
3258     "OK",
3259     "+BSIR: 0" ,
3260     "+CIEV: 3,1" ,
3261     "RING" ,
3262     "USER:i" , // "ATD1234567;" ,
3263     "AT+BRSF=951" ,
3264     "+BRSF: 511" ,
3265     "OK" ,
3266     "AT+CIND=?" ,
3267     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
3268     "OK" ,
3269     "AT+CIND?" ,
3270     "+CIND: 1,0,0,0,5,0,5" ,
3271     "OK" ,
3272     "AT+CMER=3,0,0,1" ,
3273     "OK" ,
3274     "AT+CHLD=?" ,
3275     "+CHLD: (0,1,1x,2,2x,3,4)" ,
3276     "OK" ,
3277     "AT+VGM=9" ,
3278     "OK",
3279     "AT+VGS=9" ,
3280     "OK",
3281     "+BSIR: 0" ,
3282     "+CIEV: 3,1" ,
3283     "RING" ,
3284     "USER:I" , // "ATD // 21;" ,
3285     "AT+BRSF=951" ,
3286     "+BRSF: 511" ,
3287     "OK" ,
3288     "AT+CIND=?" ,
3289     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
3290     "OK" ,
3291     "AT+CIND?" ,
3292     "+CIND: 1,0,0,0,5,0,5" ,
3293     "OK" ,
3294     "AT+CMER=3,0,0,1" ,
3295     "OK" ,
3296     "AT+CHLD=?" ,
3297     "+CHLD: (0,1,1x,2,2x,3,4)" ,
3298     "OK" ,
3299     "AT+VGM=9" ,
3300     "OK",
3301     "AT+VGS=9" ,
3302     "OK",
3303     "+BSIR: 0" ,
3304     "+CIEV: 3,1" ,
3305     "RING" ,
3306     "RING" ,
3307     "USER:]" , // "AT+BTRH=0" ,
3308     "+BTRH: 0" ,
3309     "OK" ,
3310     "+CIEV: 2,1" ,
3311     "+CIEV: 3,0" ,
3312     "+BTRH: 2" ,
3313     "+CIEV: 2,0" ,
3314     "AT+BRSF=951" ,
3315     "+BRSF: 511" ,
3316     "OK" ,
3317     "AT+CIND=?" ,
3318     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
3319     "OK" ,
3320     "AT+CIND?" ,
3321     "+CIND: 1,0,0,0,5,0,5" ,
3322     "OK" ,
3323     "AT+CMER=3,0,0,1" ,
3324     "OK" ,
3325     "AT+CHLD=?" ,
3326     "+CHLD: (0,1,1x,2,2x,3,4)" ,
3327     "OK" ,
3328     "AT+VGM=9" ,
3329     "OK",
3330     "AT+VGS=9" ,
3331     "OK",
3332     "+BSIR: 0" ,
3333     "+CIEV: 3,1" ,
3334     "RING" ,
3335     "+CLIP: \"1234567\",129" ,
3336     "+BTRH: 0" ,
3337     "+CIEV: 2,1" ,
3338     "+CIEV: 3,0" ,
3339     "+BTRH: 2" ,
3340     "+CIEV: 2,0" ,
3341     "AT+BRSF=951" ,
3342     "+BRSF: 511" ,
3343     "OK" ,
3344     "AT+CIND=?" ,
3345     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
3346     "OK" ,
3347     "AT+CIND?" ,
3348     "+CIND: 1,1,0,0,5,0,5" ,
3349     "OK" ,
3350     "AT+CMER=3,0,0,1" ,
3351     "OK" ,
3352     "AT+CHLD=?" ,
3353     "+CHLD: (0,1,1x,2,2x,3,4)" ,
3354     "OK" ,
3355     "AT+VGM=9" ,
3356     "OK",
3357     "AT+VGS=9" ,
3358     "OK",
3359     "+BSIR: 0" ,
3360     "USER:{" , // "AT+BTRH=1" ,
3361     "+BTRH: 1" ,
3362     "OK" ,
3363     "+CIEV: 2,0" ,
3364     "AT+BRSF=951" ,
3365     "+BRSF: 511" ,
3366     "OK" ,
3367     "AT+CIND=?" ,
3368     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
3369     "OK" ,
3370     "AT+CIND?" ,
3371     "+CIND: 1,1,0,0,5,0,5" ,
3372     "OK" ,
3373     "AT+CMER=3,0,0,1" ,
3374     "OK" ,
3375     "AT+CHLD=?" ,
3376     "+CHLD: (0,1,1x,2,2x,3,4)" ,
3377     "OK" ,
3378     "AT+VGM=9" ,
3379     "OK",
3380     "AT+VGS=9" ,
3381     "OK",
3382     "+BSIR: 0" ,
3383     "+BTRH: 1" ,
3384     "+CIEV: 2,0"
3385 };
3386 
3387 const char * TC_HF_RHH_BV_06_I[] = {
3388     "USER:a" ,
3389     "AT+BRSF=951" ,
3390     "+BRSF: 511" ,
3391     "OK" ,
3392     "AT+CIND=?" ,
3393     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
3394     "OK" ,
3395     "AT+CIND?" ,
3396     "+CIND: 1,1,0,0,5,0,5" ,
3397     "OK" ,
3398     "AT+CMER=3,0,0,1" ,
3399     "OK" ,
3400     "AT+CHLD=?" ,
3401     "+CHLD: (0,1,1x,2,2x,3,4)" ,
3402     "OK" ,
3403     "AT+VGM=9" ,
3404     "OK",
3405     "AT+VGS=9" ,
3406     "OK",
3407     "+BSIR: 0" ,
3408     "+BTRH: 2" ,
3409     "+CIEV: 2,0" ,
3410     "AT+BRSF=951" ,
3411     "+BRSF: 511" ,
3412     "OK" ,
3413     "AT+CIND=?" ,
3414     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
3415     "OK" ,
3416     "AT+CIND?" ,
3417     "+CIND: 1,0,0,0,5,0,5" ,
3418     "OK" ,
3419     "AT+CMER=3,0,0,1" ,
3420     "OK" ,
3421     "AT+CHLD=?" ,
3422     "+CHLD: (0,1,1x,2,2x,3,4)" ,
3423     "OK" ,
3424     "AT+VGM=9" ,
3425     "OK",
3426     "AT+VGS=9" ,
3427     "OK",
3428     "+BSIR: 0" ,
3429     "+CIEV: 3,1" ,
3430     "RING" ,
3431     "RING" ,
3432     "RING" ,
3433     "RING" ,
3434     "RING" ,
3435     "USER:f" , //"ATA" ,
3436     "OK" ,
3437     "+CIEV: 2,1" ,
3438     "+CIEV: 3,0" ,
3439     "AT+BRSF=951" ,
3440     "+BRSF: 511" ,
3441     "OK" ,
3442     "AT+CIND=?" ,
3443     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
3444     "OK" ,
3445     "AT+CIND?" ,
3446     "+CIND: 1,0,0,0,5,0,5" ,
3447     "OK" ,
3448     "AT+CMER=3,0,0,1" ,
3449     "OK" ,
3450     "AT+CHLD=?" ,
3451     "+CHLD: (0,1,1x,2,2x,3,4)" ,
3452     "OK" ,
3453     "AT+VGM=9" ,
3454     "OK",
3455     "AT+VGS=9" ,
3456     "OK",
3457     "+BSIR: 0" ,
3458     "+CIEV: 3,1" ,
3459     "RING" ,
3460     "USER:i" , // "ATD1234567;" ,
3461     "AT+BRSF=951" ,
3462     "+BRSF: 511" ,
3463     "OK" ,
3464     "AT+CIND=?" ,
3465     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
3466     "OK" ,
3467     "AT+CIND?" ,
3468     "+CIND: 1,0,0,0,5,0,5" ,
3469     "OK" ,
3470     "AT+CMER=3,0,0,1" ,
3471     "OK" ,
3472     "AT+CHLD=?" ,
3473     "+CHLD: (0,1,1x,2,2x,3,4)" ,
3474     "OK" ,
3475     "AT+VGM=9" ,
3476     "OK",
3477     "AT+VGS=9" ,
3478     "OK",
3479     "+BSIR: 0" ,
3480     "+CIEV: 3,1" ,
3481     "RING" ,
3482     "USER:I" , // "ATD // 21;" ,
3483     "AT+BRSF=951" ,
3484     "+BRSF: 511" ,
3485     "OK" ,
3486     "AT+CIND=?" ,
3487     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
3488     "OK" ,
3489     "AT+CIND?" ,
3490     "+CIND: 1,0,0,0,5,0,5" ,
3491     "OK" ,
3492     "AT+CMER=3,0,0,1" ,
3493     "OK" ,
3494     "AT+CHLD=?" ,
3495     "+CHLD: (0,1,1x,2,2x,3,4)" ,
3496     "OK" ,
3497     "AT+VGM=9" ,
3498     "OK",
3499     "AT+VGS=9" ,
3500     "OK",
3501     "+BSIR: 0" ,
3502     "+CIEV: 3,1" ,
3503     "RING" ,
3504     "RING" ,
3505     "USER:]" , // "AT+BTRH=0" ,
3506     "+BTRH: 0" ,
3507     "OK" ,
3508     "+CIEV: 2,1" ,
3509     "+CIEV: 3,0" ,
3510     "+BTRH: 2" ,
3511     "+CIEV: 2,0" ,
3512     "AT+BRSF=951" ,
3513     "+BRSF: 511" ,
3514     "OK" ,
3515     "AT+CIND=?" ,
3516     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
3517     "OK" ,
3518     "AT+CIND?" ,
3519     "+CIND: 1,0,0,0,5,0,5" ,
3520     "OK" ,
3521     "AT+CMER=3,0,0,1" ,
3522     "OK" ,
3523     "AT+CHLD=?" ,
3524     "+CHLD: (0,1,1x,2,2x,3,4)" ,
3525     "OK" ,
3526     "AT+VGM=9" ,
3527     "OK",
3528     "AT+VGS=9" ,
3529     "OK",
3530     "+BSIR: 0" ,
3531     "+CIEV: 3,1" ,
3532     "RING" ,
3533     "+CLIP: \"1234567\",129" ,
3534     "+BTRH: 0" ,
3535     "+CIEV: 2,1" ,
3536     "+CIEV: 3,0" ,
3537     "+BTRH: 2" ,
3538     "+CIEV: 2,0" ,
3539     "AT+BRSF=951" ,
3540     "+BRSF: 511" ,
3541     "OK" ,
3542     "AT+CIND=?" ,
3543     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
3544     "OK" ,
3545     "AT+CIND?" ,
3546     "+CIND: 1,1,0,0,5,0,5" ,
3547     "OK" ,
3548     "AT+CMER=3,0,0,1" ,
3549     "OK" ,
3550     "AT+CHLD=?" ,
3551     "+CHLD: (0,1,1x,2,2x,3,4)" ,
3552     "OK" ,
3553     "AT+VGM=9" ,
3554     "OK",
3555     "AT+VGS=9" ,
3556     "OK",
3557     "+BSIR: 0" ,
3558     "USER:{" , // "AT+BTRH=1" ,
3559     "+BTRH: 1" ,
3560     "OK" ,
3561     "+CIEV: 2,0" ,
3562     "AT+BRSF=951" ,
3563     "+BRSF: 511" ,
3564     "OK" ,
3565     "AT+CIND=?" ,
3566     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
3567     "OK" ,
3568     "AT+CIND?" ,
3569     "+CIND: 1,1,0,0,5,0,5" ,
3570     "OK" ,
3571     "AT+CMER=3,0,0,1" ,
3572     "OK" ,
3573     "AT+CHLD=?" ,
3574     "+CHLD: (0,1,1x,2,2x,3,4)" ,
3575     "OK" ,
3576     "AT+VGM=9" ,
3577     "OK",
3578     "AT+VGS=9" ,
3579     "OK",
3580     "+BSIR: 0" ,
3581     "+BTRH: 1" ,
3582     "+CIEV: 2,0" ,
3583     "AT+BRSF=951" ,
3584     "+BRSF: 511" ,
3585     "OK" ,
3586     "AT+CIND=?" ,
3587     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
3588     "OK" ,
3589     "AT+CIND?" ,
3590     "+CIND: 1,1,0,0,5,0,5" ,
3591     "OK" ,
3592     "AT+CMER=3,0,0,1" ,
3593     "OK" ,
3594     "AT+CHLD=?" ,
3595     "+CHLD: (0,1,1x,2,2x,3,4)" ,
3596     "OK" ,
3597     "AT+VGM=9" ,
3598     "OK",
3599     "AT+VGS=9" ,
3600     "OK",
3601     "+BSIR: 0" ,
3602     "USER:}" , // "AT+BTRH=2" ,
3603     "+BTRH: 2" ,
3604     "OK" ,
3605     "+CIEV: 2,0"
3606 };
3607 
3608 
3609 const char * TC_HF_RHH_BV_07_I[] = {
3610     "USER:a" ,
3611     "AT+BRSF=951" ,
3612     "+BRSF: 511" ,
3613     "OK" ,
3614     "AT+CIND=?" ,
3615     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
3616     "OK" ,
3617     "AT+CIND?" ,
3618     "+CIND: 1,1,0,0,5,0,5" ,
3619     "OK" ,
3620     "AT+CMER=3,0,0,1" ,
3621     "OK" ,
3622     "AT+CHLD=?" ,
3623     "+CHLD: (0,1,1x,2,2x,3,4)" ,
3624     "OK" ,
3625     "AT+VGM=9" ,
3626     "OK",
3627     "AT+VGS=9" ,
3628     "OK",
3629     "+BSIR: 0" ,
3630     "+BTRH: 2" ,
3631     "+CIEV: 2,0" ,
3632     "AT+BRSF=951" ,
3633     "+BRSF: 511" ,
3634     "OK" ,
3635     "AT+CIND=?" ,
3636     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
3637     "OK" ,
3638     "AT+CIND?" ,
3639     "+CIND: 1,0,0,0,5,0,5" ,
3640     "OK" ,
3641     "AT+CMER=3,0,0,1" ,
3642     "OK" ,
3643     "AT+CHLD=?" ,
3644     "+CHLD: (0,1,1x,2,2x,3,4)" ,
3645     "OK" ,
3646     "AT+VGM=9" ,
3647     "OK",
3648     "AT+VGS=9" ,
3649     "OK",
3650     "+BSIR: 0" ,
3651     "+CIEV: 3,1" ,
3652     "RING" ,
3653     "RING" ,
3654     "RING" ,
3655     "RING" ,
3656     "RING" ,
3657     "USER:f" , //"ATA" ,
3658     "OK" ,
3659     "+CIEV: 2,1" ,
3660     "+CIEV: 3,0" ,
3661     "AT+BRSF=951" ,
3662     "+BRSF: 511" ,
3663     "OK" ,
3664     "AT+CIND=?" ,
3665     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
3666     "OK" ,
3667     "AT+CIND?" ,
3668     "+CIND: 1,0,0,0,5,0,5" ,
3669     "OK" ,
3670     "AT+CMER=3,0,0,1" ,
3671     "OK" ,
3672     "AT+CHLD=?" ,
3673     "+CHLD: (0,1,1x,2,2x,3,4)" ,
3674     "OK" ,
3675     "AT+VGM=9" ,
3676     "OK",
3677     "AT+VGS=9" ,
3678     "OK",
3679     "+BSIR: 0" ,
3680     "+CIEV: 3,1" ,
3681     "RING" ,
3682     "USER:i" , // "ATD1234567;" ,
3683     "AT+BRSF=951" ,
3684     "+BRSF: 511" ,
3685     "OK" ,
3686     "AT+CIND=?" ,
3687     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
3688     "OK" ,
3689     "AT+CIND?" ,
3690     "+CIND: 1,0,0,0,5,0,5" ,
3691     "OK" ,
3692     "AT+CMER=3,0,0,1" ,
3693     "OK" ,
3694     "AT+CHLD=?" ,
3695     "+CHLD: (0,1,1x,2,2x,3,4)" ,
3696     "OK" ,
3697     "AT+VGM=9" ,
3698     "OK",
3699     "AT+VGS=9" ,
3700     "OK",
3701     "+BSIR: 0" ,
3702     "+CIEV: 3,1" ,
3703     "RING" ,
3704     "USER:I" , // "ATD // 21;" ,
3705     "AT+BRSF=951" ,
3706     "+BRSF: 511" ,
3707     "OK" ,
3708     "AT+CIND=?" ,
3709     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
3710     "OK" ,
3711     "AT+CIND?" ,
3712     "+CIND: 1,0,0,0,5,0,5" ,
3713     "OK" ,
3714     "AT+CMER=3,0,0,1" ,
3715     "OK" ,
3716     "AT+CHLD=?" ,
3717     "+CHLD: (0,1,1x,2,2x,3,4)" ,
3718     "OK" ,
3719     "AT+VGM=9" ,
3720     "OK",
3721     "AT+VGS=9" ,
3722     "OK",
3723     "+BSIR: 0" ,
3724     "+CIEV: 3,1" ,
3725     "RING" ,
3726     "RING" ,
3727     "USER:]" , // "AT+BTRH=0" ,
3728     "+BTRH: 0" ,
3729     "OK" ,
3730     "+CIEV: 2,1" ,
3731     "+CIEV: 3,0" ,
3732     "+BTRH: 2" ,
3733     "+CIEV: 2,0" ,
3734     "AT+BRSF=951" ,
3735     "+BRSF: 511" ,
3736     "OK" ,
3737     "AT+CIND=?" ,
3738     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
3739     "OK" ,
3740     "AT+CIND?" ,
3741     "+CIND: 1,0,0,0,5,0,5" ,
3742     "OK" ,
3743     "AT+CMER=3,0,0,1" ,
3744     "OK" ,
3745     "AT+CHLD=?" ,
3746     "+CHLD: (0,1,1x,2,2x,3,4)" ,
3747     "OK" ,
3748     "AT+VGM=9" ,
3749     "OK",
3750     "AT+VGS=9" ,
3751     "OK",
3752     "+BSIR: 0" ,
3753     "+CIEV: 3,1" ,
3754     "RING" ,
3755     "+CLIP: \"1234567\",129" ,
3756     "+BTRH: 0" ,
3757     "+CIEV: 2,1" ,
3758     "+CIEV: 3,0" ,
3759     "+BTRH: 2" ,
3760     "+CIEV: 2,0" ,
3761     "AT+BRSF=951" ,
3762     "+BRSF: 511" ,
3763     "OK" ,
3764     "AT+CIND=?" ,
3765     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
3766     "OK" ,
3767     "AT+CIND?" ,
3768     "+CIND: 1,1,0,0,5,0,5" ,
3769     "OK" ,
3770     "AT+CMER=3,0,0,1" ,
3771     "OK" ,
3772     "AT+CHLD=?" ,
3773     "+CHLD: (0,1,1x,2,2x,3,4)" ,
3774     "OK" ,
3775     "AT+VGM=9" ,
3776     "OK",
3777     "AT+VGS=9" ,
3778     "OK",
3779     "+BSIR: 0" ,
3780     "USER:{" , // "AT+BTRH=1" ,
3781     "+BTRH: 1" ,
3782     "OK" ,
3783     "+CIEV: 2,0" ,
3784     "AT+BRSF=951" ,
3785     "+BRSF: 511" ,
3786     "OK" ,
3787     "AT+CIND=?" ,
3788     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
3789     "OK" ,
3790     "AT+CIND?" ,
3791     "+CIND: 1,1,0,0,5,0,5" ,
3792     "OK" ,
3793     "AT+CMER=3,0,0,1" ,
3794     "OK" ,
3795     "AT+CHLD=?" ,
3796     "+CHLD: (0,1,1x,2,2x,3,4)" ,
3797     "OK" ,
3798     "AT+VGM=9" ,
3799     "OK",
3800     "AT+VGS=9" ,
3801     "OK",
3802     "+BSIR: 0" ,
3803     "+BTRH: 1" ,
3804     "+CIEV: 2,0" ,
3805     "AT+BRSF=951" ,
3806     "+BRSF: 511" ,
3807     "OK" ,
3808     "AT+CIND=?" ,
3809     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
3810     "OK" ,
3811     "AT+CIND?" ,
3812     "+CIND: 1,1,0,0,5,0,5" ,
3813     "OK" ,
3814     "AT+CMER=3,0,0,1" ,
3815     "OK" ,
3816     "AT+CHLD=?" ,
3817     "+CHLD: (0,1,1x,2,2x,3,4)" ,
3818     "OK" ,
3819     "AT+VGM=9" ,
3820     "OK",
3821     "AT+VGS=9" ,
3822     "OK",
3823     "+BSIR: 0" ,
3824     "USER:}" , // "AT+BTRH=2" ,
3825     "+BTRH: 2" ,
3826     "OK" ,
3827     "+CIEV: 2,0" ,
3828     "AT+BRSF=951" ,
3829     "+BRSF: 511" ,
3830     "OK" ,
3831     "AT+CIND=?" ,
3832     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
3833     "OK" ,
3834     "AT+CIND?" ,
3835     "+CIND: 1,1,0,0,5,0,5" ,
3836     "OK" ,
3837     "AT+CMER=3,0,0,1" ,
3838     "OK" ,
3839     "AT+CHLD=?" ,
3840     "+CHLD: (0,1,1x,2,2x,3,4)" ,
3841     "OK" ,
3842     "AT+VGM=9" ,
3843     "OK",
3844     "AT+VGS=9" ,
3845     "OK",
3846     "+BSIR: 0" ,
3847     "+BTRH: 2" ,
3848     "+CIEV: 2,0"
3849 };
3850 
3851 const char * TC_HF_RHH_BV_08_I[] = {
3852     "USER:a" ,
3853     "AT+BRSF=951" ,
3854     "+BRSF: 511" ,
3855     "OK" ,
3856     "AT+CIND=?" ,
3857     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
3858     "OK" ,
3859     "AT+CIND?" ,
3860     "+CIND: 1,1,0,0,5,0,5" ,
3861     "OK" ,
3862     "AT+CMER=3,0,0,1" ,
3863     "OK" ,
3864     "AT+CHLD=?" ,
3865     "+CHLD: (0,1,1x,2,2x,3,4)" ,
3866     "OK" ,
3867     "AT+VGM=9" ,
3868     "OK",
3869     "AT+VGS=9" ,
3870     "OK",
3871     "+BSIR: 0" ,
3872     "+BTRH: 2" ,
3873     "+CIEV: 2,0" ,
3874     "AT+BRSF=951" ,
3875     "+BRSF: 511" ,
3876     "OK" ,
3877     "AT+CIND=?" ,
3878     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
3879     "OK" ,
3880     "AT+CIND?" ,
3881     "+CIND: 1,0,0,0,5,0,5" ,
3882     "OK" ,
3883     "AT+CMER=3,0,0,1" ,
3884     "OK" ,
3885     "AT+CHLD=?" ,
3886     "+CHLD: (0,1,1x,2,2x,3,4)" ,
3887     "OK" ,
3888     "AT+VGM=9" ,
3889     "OK",
3890     "AT+VGS=9" ,
3891     "OK",
3892     "+BSIR: 0" ,
3893     "+CIEV: 3,1" ,
3894     "RING" ,
3895     "RING" ,
3896     "RING" ,
3897     "RING" ,
3898     "RING" ,
3899     "USER:f" , //"ATA" ,
3900     "OK" ,
3901     "+CIEV: 2,1" ,
3902     "+CIEV: 3,0" ,
3903     "AT+BRSF=951" ,
3904     "+BRSF: 511" ,
3905     "OK" ,
3906     "AT+CIND=?" ,
3907     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
3908     "OK" ,
3909     "AT+CIND?" ,
3910     "+CIND: 1,0,0,0,5,0,5" ,
3911     "OK" ,
3912     "AT+CMER=3,0,0,1" ,
3913     "OK" ,
3914     "AT+CHLD=?" ,
3915     "+CHLD: (0,1,1x,2,2x,3,4)" ,
3916     "OK" ,
3917     "AT+VGM=9" ,
3918     "OK",
3919     "AT+VGS=9" ,
3920     "OK",
3921     "+BSIR: 0" ,
3922     "+CIEV: 3,1" ,
3923     "RING" ,
3924     "USER:i" , // "ATD1234567;" ,
3925     "AT+BRSF=951" ,
3926     "+BRSF: 511" ,
3927     "OK" ,
3928     "AT+CIND=?" ,
3929     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
3930     "OK" ,
3931     "AT+CIND?" ,
3932     "+CIND: 1,0,0,0,5,0,5" ,
3933     "OK" ,
3934     "AT+CMER=3,0,0,1" ,
3935     "OK" ,
3936     "AT+CHLD=?" ,
3937     "+CHLD: (0,1,1x,2,2x,3,4)" ,
3938     "OK" ,
3939     "AT+VGM=9" ,
3940     "OK",
3941     "AT+VGS=9" ,
3942     "OK",
3943     "+BSIR: 0" ,
3944     "+CIEV: 3,1" ,
3945     "RING" ,
3946     "USER:I" , // "ATD // 21;" ,
3947     "AT+BRSF=951" ,
3948     "+BRSF: 511" ,
3949     "OK" ,
3950     "AT+CIND=?" ,
3951     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
3952     "OK" ,
3953     "AT+CIND?" ,
3954     "+CIND: 1,0,0,0,5,0,5" ,
3955     "OK" ,
3956     "AT+CMER=3,0,0,1" ,
3957     "OK" ,
3958     "AT+CHLD=?" ,
3959     "+CHLD: (0,1,1x,2,2x,3,4)" ,
3960     "OK" ,
3961     "AT+VGM=9" ,
3962     "OK",
3963     "AT+VGS=9" ,
3964     "OK",
3965     "+BSIR: 0" ,
3966     "+CIEV: 3,1" ,
3967     "RING" ,
3968     "RING" ,
3969     "USER:]" , // "AT+BTRH=0" ,
3970     "+BTRH: 0" ,
3971     "OK" ,
3972     "+CIEV: 2,1" ,
3973     "+CIEV: 3,0" ,
3974     "+BTRH: 2" ,
3975     "+CIEV: 2,0" ,
3976     "AT+BRSF=951" ,
3977     "+BRSF: 511" ,
3978     "OK" ,
3979     "AT+CIND=?" ,
3980     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
3981     "OK" ,
3982     "AT+CIND?" ,
3983     "+CIND: 1,0,0,0,5,0,5" ,
3984     "OK" ,
3985     "AT+CMER=3,0,0,1" ,
3986     "OK" ,
3987     "AT+CHLD=?" ,
3988     "+CHLD: (0,1,1x,2,2x,3,4)" ,
3989     "OK" ,
3990     "AT+VGM=9" ,
3991     "OK",
3992     "AT+VGS=9" ,
3993     "OK",
3994     "+BSIR: 0" ,
3995     "+CIEV: 3,1" ,
3996     "RING" ,
3997     "+CLIP: \"1234567\",129" ,
3998     "+BTRH: 0" ,
3999     "+CIEV: 2,1" ,
4000     "+CIEV: 3,0" ,
4001     "+BTRH: 2" ,
4002     "+CIEV: 2,0" ,
4003     "AT+BRSF=951" ,
4004     "+BRSF: 511" ,
4005     "OK" ,
4006     "AT+CIND=?" ,
4007     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
4008     "OK" ,
4009     "AT+CIND?" ,
4010     "+CIND: 1,1,0,0,5,0,5" ,
4011     "OK" ,
4012     "AT+CMER=3,0,0,1" ,
4013     "OK" ,
4014     "AT+CHLD=?" ,
4015     "+CHLD: (0,1,1x,2,2x,3,4)" ,
4016     "OK" ,
4017     "AT+VGM=9" ,
4018     "OK",
4019     "AT+VGS=9" ,
4020     "OK",
4021     "+BSIR: 0" ,
4022     "USER:{" , // "AT+BTRH=1" ,
4023     "+BTRH: 1" ,
4024     "OK" ,
4025     "+CIEV: 2,0" ,
4026     "AT+BRSF=951" ,
4027     "+BRSF: 511" ,
4028     "OK" ,
4029     "AT+CIND=?" ,
4030     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
4031     "OK" ,
4032     "AT+CIND?" ,
4033     "+CIND: 1,1,0,0,5,0,5" ,
4034     "OK" ,
4035     "AT+CMER=3,0,0,1" ,
4036     "OK" ,
4037     "AT+CHLD=?" ,
4038     "+CHLD: (0,1,1x,2,2x,3,4)" ,
4039     "OK" ,
4040     "AT+VGM=9" ,
4041     "OK",
4042     "AT+VGS=9" ,
4043     "OK",
4044     "+BSIR: 0" ,
4045     "+BTRH: 1" ,
4046     "+CIEV: 2,0" ,
4047     "AT+BRSF=951" ,
4048     "+BRSF: 511" ,
4049     "OK" ,
4050     "AT+CIND=?" ,
4051     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
4052     "OK" ,
4053     "AT+CIND?" ,
4054     "+CIND: 1,1,0,0,5,0,5" ,
4055     "OK" ,
4056     "AT+CMER=3,0,0,1" ,
4057     "OK" ,
4058     "AT+CHLD=?" ,
4059     "+CHLD: (0,1,1x,2,2x,3,4)" ,
4060     "OK" ,
4061     "AT+VGM=9" ,
4062     "OK",
4063     "AT+VGS=9" ,
4064     "OK",
4065     "+BSIR: 0" ,
4066     "USER:}" , // "AT+BTRH=2" ,
4067     "+BTRH: 2" ,
4068     "OK" ,
4069     "+CIEV: 2,0" ,
4070     "AT+BRSF=951" ,
4071     "+BRSF: 511" ,
4072     "OK" ,
4073     "AT+CIND=?" ,
4074     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
4075     "OK" ,
4076     "AT+CIND?" ,
4077     "+CIND: 1,1,0,0,5,0,5" ,
4078     "OK" ,
4079     "AT+CMER=3,0,0,1" ,
4080     "OK" ,
4081     "AT+CHLD=?" ,
4082     "+CHLD: (0,1,1x,2,2x,3,4)" ,
4083     "OK" ,
4084     "AT+VGM=9" ,
4085     "OK",
4086     "AT+VGS=9" ,
4087     "OK",
4088     "+BSIR: 0" ,
4089     "+BTRH: 2" ,
4090     "+CIEV: 2,0" ,
4091     "AT+BRSF=951" ,
4092     "+BRSF: 511" ,
4093     "OK" ,
4094     "AT+CIND=?" ,
4095     "+CIND: (\"service\",(0,1)),(\"call\",(0,1)),(\"callsetup\",(0-3)),(\"callheld\",(0-2)),(\"signal\",(0-5)),(\"roam\",(0-1)),(\"battchg\",(0-5))" ,
4096     "OK" ,
4097     "AT+CIND?" ,
4098     "+CIND: 1,1,0,0,5,0,5" ,
4099     "OK" ,
4100     "AT+CMER=3,0,0,1" ,
4101     "OK" ,
4102     "AT+CHLD=?" ,
4103     "+CHLD: (0,1,1x,2,2x,3,4)" ,
4104     "OK" ,
4105     "AT+VGM=9" ,
4106     "OK",
4107     "AT+VGS=9" ,
4108     "OK",
4109     "+BSIR: 0" ,
4110     "+BTRH: 2" ,
4111     "+CIEV: 2,0"
4112 };
4113 
4114 hfp_test_item_t pts_hf_rhh_tests[] = {
4115     TEST_SEQUENCE(TC_HF_RHH_BV_01_I),
4116     // TEST_SEQUENCE(TC_HF_RHH_BV_02_I),
4117     // TEST_SEQUENCE(TC_HF_RHH_BV_03_I),
4118     // TEST_SEQUENCE(TC_HF_RHH_BV_04_I),
4119     // TEST_SEQUENCE(TC_HF_RHH_BV_05_I),
4120     // TEST_SEQUENCE(TC_HF_RHH_BV_06_I),
4121     // TEST_SEQUENCE(TC_HF_RHH_BV_07_I),
4122     // TEST_SEQUENCE(TC_HF_RHH_BV_08_I)
4123 };
4124 
4125 /////////
4126 static int test_item_size = sizeof(hfp_test_item_t);
4127 
4128 // CC
hfp_cc_tests_size(void)4129 int hfp_cc_tests_size(void){ return sizeof(cc_tests) /test_item_size;}
hfp_cc_tests(void)4130 hfp_test_item_t * hfp_cc_tests(void){ return cc_tests;}
default_hfp_cc_test(void)4131 hfp_test_item_t * default_hfp_cc_test(void){ return &cc_tests[0];}
4132 
4133 // PTS - SLC Group
hfp_pts_ag_slc_tests_size(void)4134 int hfp_pts_ag_slc_tests_size(void){ return sizeof(pts_ag_slc_tests)/test_item_size;}
hfp_pts_ag_slc_tests(void)4135 hfp_test_item_t * hfp_pts_ag_slc_tests(void){ return pts_ag_slc_tests;}
4136 
hfp_pts_hf_slc_tests_size(void)4137 int hfp_pts_hf_slc_tests_size(void){ return sizeof(pts_hf_slc_tests)/test_item_size;}
hfp_pts_hf_slc_tests(void)4138 hfp_test_item_t * hfp_pts_hf_slc_tests(void){ return pts_hf_slc_tests;}
4139 
4140 // PTS - ATA Group
hfp_pts_ag_ata_tests_size(void)4141 int hfp_pts_ag_ata_tests_size(void){ return sizeof(pts_ag_ata_tests)/test_item_size;}
hfp_pts_ag_ata_tests(void)4142 hfp_test_item_t * hfp_pts_ag_ata_tests(void){ return pts_ag_ata_tests;}
4143 
hfp_pts_hf_ata_tests_size(void)4144 int hfp_pts_hf_ata_tests_size(void){ return sizeof(pts_hf_ata_tests)/test_item_size;}
hfp_pts_hf_ata_tests(void)4145 hfp_test_item_t * hfp_pts_hf_ata_tests(void){ return pts_hf_ata_tests;}
4146 
4147 // PTS - TWC Group
hfp_pts_ag_twc_tests_size(void)4148 int hfp_pts_ag_twc_tests_size(void){ return sizeof(pts_ag_twc_tests)/test_item_size;}
hfp_pts_ag_twc_tests(void)4149 hfp_test_item_t * hfp_pts_ag_twc_tests(void){ return pts_ag_twc_tests;}
hfp_pts_hf_twc_tests_size(void)4150 int hfp_pts_hf_twc_tests_size(void){ return sizeof(pts_hf_twc_tests)/test_item_size;}
hfp_pts_hf_twc_tests(void)4151 hfp_test_item_t * hfp_pts_hf_twc_tests(void){ return pts_hf_twc_tests;}
4152 
4153 // PTS - ECS Group
hfp_pts_ag_ecs_tests_size(void)4154 int hfp_pts_ag_ecs_tests_size(void){ return sizeof(pts_ag_ecs_tests)/test_item_size;}
hfp_pts_ag_ecs_tests(void)4155 hfp_test_item_t * hfp_pts_ag_ecs_tests(void){ return pts_ag_ecs_tests;}
hfp_pts_hf_ecs_tests_size(void)4156 int hfp_pts_hf_ecs_tests_size(void){ return sizeof(pts_hf_ecs_tests)/test_item_size;}
hfp_pts_hf_ecs_tests(void)4157 hfp_test_item_t * hfp_pts_hf_ecs_tests(void){ return pts_hf_ecs_tests;}
4158 
4159 // PTS - ECC Group
hfp_pts_ag_ecc_tests_size(void)4160 int hfp_pts_ag_ecc_tests_size(void){ return sizeof(pts_ag_ecc_tests)/test_item_size;}
hfp_pts_ag_ecc_tests(void)4161 hfp_test_item_t * hfp_pts_ag_ecc_tests(void){ return pts_ag_ecc_tests;}
hfp_pts_hf_ecc_tests_size(void)4162 int hfp_pts_hf_ecc_tests_size(void){ return sizeof(pts_hf_ecc_tests)/test_item_size;}
hfp_pts_hf_ecc_tests(void)4163 hfp_test_item_t * hfp_pts_hf_ecc_tests(void){ return pts_hf_ecc_tests;}
4164 
4165 // PTS - RHH Group
hfp_pts_ag_rhh_tests_size(void)4166 int hfp_pts_ag_rhh_tests_size(void){ return sizeof(pts_ag_rhh_tests)/test_item_size;}
hfp_pts_ag_rhh_tests(void)4167 hfp_test_item_t * hfp_pts_ag_rhh_tests(void){ return pts_ag_rhh_tests;}
hfp_pts_hf_rhh_tests_size(void)4168 int hfp_pts_hf_rhh_tests_size(void){ return sizeof(pts_hf_rhh_tests)/test_item_size;}
hfp_pts_hf_rhh_tests(void)4169 hfp_test_item_t * hfp_pts_hf_rhh_tests(void){ return pts_hf_rhh_tests;}
4170 
4171 
4172