BCM20737 - HID Keyboard

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Anonymous
Not applicable

Hi guys,

I'm attempting to expose the BCM20737 as a HID device, specifically a keyboard. I took a look at the watch example, and tried to adapt it to what I want to do. A couple things don't seem to work, though.

1.) Windows isn't seeing my device as a keyboard, just a generic device

2.) Windows says 'driver error' when trying to connect

My thought is there is likely something wrong with my GATT table. Can you see anything I am doing wrong here?

Here is a link to my db:

db.c · GitHub

In my code, I am simply trying to send the letter 'a' every second:

bleprofile_sendNotification(0x16, (uint8_t *)(&keyboardStatus), sizeof(keyboardStatus));

Where keyboardStatus is

0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00

Thanks,

Nick

0 Likes
3 Replies
MichaelF_56
Moderator
Moderator
Moderator
250 sign-ins 25 comments on blog 10 comments on blog

While we support the HOGP profile on the 36/37, we lack the HW Keyscan sample application to use the profile within a keyboard application. I believe GPIOs are also an issue on the 40 pin QFN package. The BCM20738 more GPIOs, but has yet to be enabled through the WICED Smart SDK; We do have a partner (Alltek) in Asian that has a solution today.

HID will also be fully supported on the 20735 (207X9 based) through the SDK later this year.

0 Likes
Anonymous
Not applicable

Thanks for the reply. My plan is to use a FRDM-K64F for all processing, and use the 20737 as a bluetooth bridge, so I'm not sure that GPIOs will be problem. My main concern is that the 20737 isn't correctly advertising itself as a keyboard. Are you saying that HID isn't fully supported in the 20737?

0 Likes

HOGP yes.  HOGP in a keyboard implementation, no.

0 Likes