3 Replies Latest reply on Jul 1, 2016 7:00 PM by MichaelF_56

    BCM20737 - HID Keyboard

    nrcrast

      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

        • 1. Re: BCM20737 - HID Keyboard
          MichaelF_56

          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.

          • 2. Re: BCM20737 - HID Keyboard
            nrcrast

            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?

            • 3. Re: BCM20737 - HID Keyboard
              MichaelF_56

              HOGP yes.  HOGP in a keyboard implementation, no.