8 posts / 0 new
Last post
awesley
Offline
Last seen:2 years 10 months ago
Joined:2015-07-07 12:08
keyboard disconnecting

When I pressed "Y" and "H" all the time, I hit the key "K", I found the key "K" was reported by sending notification through GATT suscessfully as it causes a GATT_NOTIFY_CMP_EVT message . Howerve the peer device seem to don't receive the key. I hit the key "K" more times, the connection lose.

NOT: means sending notification through GATT;
ACK1:means causing GATT_NOTIFY_CMP_EVT message;
There is some information,which is printed by uart:
KBD SW scan active
[y]
[h]
Sending HOGPD_REPORT_UPD_REQ 00:[1c:00:00:00:00:00]
NOT
ACK1
Sending HOGPD_REPORT_UPD_REQ 00:[1c:0b:00:00:00:00]
NOT
ACK1
[k]
Sending HOGPD_REPORT_UPD_REQ 00:[1c:0b:0e:00:00:00]
NOT
ACK1
Sending HOGPD_REPORT_UPD_REQ 00:[1c:0b:00:00:00:00]
NOT
ACK1
[k]
Sending HOGPD_REPORT_UPD_REQ 00:[1c:0b:0e:00:00:00]
NOT
ACK1
Sending HOGPD_REPORT_UPD_REQ 00:[1c:0b:00:00:00:00]
NOT
ACK1
[k]
Sending HOGPD_REPORT_UPD_REQ 00:[1c:0b:0e:00:00:00]
NOT
ACK1
Sending HOGPD_REPORT_UPD_REQ 00:[1c:0b:00:00:00:00]
NOT
ACK1
KBD HID rep OFF

Device:
MT_dialog
Offline
Last seen:2 days 18 hours ago
Staff
Joined:2015-06-08 11:34
Hi awesley,

Hi awesley,

Can you give me some more information about your setup ? You are using the keyboard reference design as is ? What is the development kit you are using ? Also can you please try to check if this happens in other host devices with different OS ? And what is the host device you are trying this ?

Thanks MT_dialog

awesley
Offline
Last seen:2 years 10 months ago
Joined:2015-07-07 12:08
I am making a keyboard. I

I am making a keyboard. I have checked with andriod and ios.The host device are Galaxy S4 and Ipad mini. This problem happens on both hosts that I used.
What is the inforation that you said about setup?
In the keyboard reference design, is there any function about checking the host device receiving the data corectly???

MT_dialog
Offline
Last seen:2 days 18 hours ago
Staff
Joined:2015-06-08 11:34
Hi awesley,

Hi awesley,

By setup i mean what is your development kit (hardware), are you using an expert, a pro, a keyboard reference design. There is no function is the keyboard ref design that confirms that data are received by the host. Can you check with a sniffer the data you are sending to your host ? The code that you are trying to use is the keyboard reference design as it is downloaded from the site or is a custom code based on it ?

Thanks MT_dialog

awesley
Offline
Last seen:2 years 10 months ago
Joined:2015-07-07 12:08
Hi MT_dialog,

Hi MT_dialog,

The hardware I am using is designed by own hardware enginner according to keyboard reference design. I just make a littel change of the keyboard reference design.
if I change "app_set_extended_sleep();" to "app_disable_sleep();" in the function "void app_init_func(void)", the keyboard works well. That is to say, the keyboard works well without extend_sleep.

MT_dialog
Offline
Last seen:2 days 18 hours ago
Staff
Joined:2015-06-08 11:34
Hi awesley,

Hi awesley,

如果参考设计没有改变,不喜欢work with sleep enabled then the most probable reason should be the hardware or it could be the crystal callibration of the XTAL16 crystal. Have you noticed this particular behaviour when pushing buttons from a particular row or column? When no buttons are pressed is the keyboard disconnecting ?

Thanks MT_dialog

awesley
Offline
Last seen:2 years 10 months ago
Joined:2015-07-07 12:08
Hi MT_dialog

Hi MT_dialog

When no buttons are pressed the keyboard disconnectes sometimes .I did not have done many tests .
I callibrate the XTAL16 crystal accroding to the document "End product testing and programming guidelines.pdf". But I am not sure the XTAL16 crystal is OK.I see the allowed deviation of maxinum +/-12 250HZ in the case 2450.000MHz now.I will callibrate the XTAL16 crystal again.
Thank you for you help. Thanks

MT_dialog
Offline
Last seen:2 days 18 hours ago
Staff
Joined:2015-06-08 11:34
Hi awesley,

Hi awesley,

The values of the callibration seems to be fine. Have you consider that this maybe is an antenna problem.

Thanks MT_dialog