TI中文支持网
TI专业的中文技术问题搜集分享网站

Add Time service problem

Hi All

CC2640 SDK:V2.2.2

我參考TimeApp example code加入我的Glucose Project時遇到一個問題,

我的程序有跑到以下

Time_discGattMsg() –> Time_discCurrTime()並return state = 0x11

接下來是我Project和TimeApp example 的差異:<連線配對後>
TimeApp example:會跑到TimeApp_processStackMsg()–> TimeApp_processGattMsg() –>
                                 Time_discGattMsg() 執行上述state == 0x11 find service & Characteristic,更改時間成功

我的Project:不會跑到GlucoseSensor_processStackMsg()、也就不會跑GlucoseSensor_processGattMsg(),
                      以下的Time_discGattMsg()也就不會跑,不會做find service & Characteristic的步驟。

找不到原因,請問是否什麼地方我沒改到或漏掉的? 

Viki Shi:

"不會跑到GlucoseSensor_processStackMsg()" 这句不太懂,你的project中是不是有连接的设备试图执行service discovery?

kuo austin:

回复 Viki Shi:

謝謝您的回答。

我的glucose project是slave device,所以只會跑GlucoseSensor_processAppMsg() –> 等待Master phone連線/配對,

我想加入Time service,但Time App中似乎是Master的角色,所以我參考Time App方式在GlucoseSensor_processStateChangeEvt()

的GAPROLE_CONNECTED連線時執行"Util_startClock(&startDiscoveryClock)"去找Time service uuid(程式有執行到time_discovery.c的

Time_discCurrTime())

整理如下:1、目前程式有跑到Time_discCurrTime() <newState = DISC_CURR_TIME_START –> DISC_CURR_TIME_SVC> discovery time service      return GATT_DiscPrimaryServiceByUUID != MSG_BUFFER_NOT_AVAIL

2、程式還需再跑一次Time_discCurrTime() <newState = DISC_CURR_TIME_SVC> 才能確定Service & Characteristic找到

3、第二次執行Time_discCurrTime()是call by TimeApp_processStackMsg()<My project:GlucoseSensor_processStackMsg()>     就是目前卡住的地方,執行了discovery time service後,應該會收到Master phone的回應,並通知GlucoseSensor_processStackMsg(),     但都沒反應,所以無法執行到Time_discCurrTime() <DISC_CURR_TIME_SVC & DISC_CURR_TIME_CHAR>

     

Viki Shi:

回复 kuo austin:

time_app应该是GATT client, 也即是从设备,两个例程分开测试有问题吗?另外,能否提供抓包文件?

kuo austin:

回复 Viki Shi:

Hi Viki

我這裡沒有能抓packet的工具,sample code "TimeApp"沒問題,

是加入我的project後收不到手機的回應,但我找不到卡在哪裡,

是否有什麼地方需要特別注意的??

Viki Shi:

回复 kuo austin:

最好能提供一下抓包文件,光凭描述不好判断

赞(0)
未经允许不得转载:TI中文支持网 » Add Time service problem
分享到: 更多 (0)