Hi Dialog,
Could I use HOGPD service in your SDK even my device is neither a keyboard nor a mouse?
I have a simple device wants to communicate with PC. I want to use HID over GATT service because it doesn't not require extra driver on PC side. However in your SDK, I could only declare the device as a keyboard or a mouse(Table 5. 3 – svc_features Parameter Bit Flags in "rw-ble-prf-hogpd-is").
Is that possible for me to just make the device as an HID device. In the windows side, it is displayed as neither a keyboard nor a mouse, but we could transfer my customized data over HID channel.
Thanks a lot.
Hi,
That is definitely technically possible. You would probably see some side effects if data is sent to the PC while someone is about to edit a document or filling out text feilds in applications.
Hi MHv_Dialog,
Thanks for your reply.
But my question is could I develop a Raw HID device base on HOGPD provided in Dialog's SDK. Basically I want to develop a customized BLE HID device(Neither keyboard nor mouse), however I still use HID service to transmit data between my device and PC through HID channel.
关键是我想utilize HID built in driver in PC to communicate with my BLE device. At the same time, I don't want to interfere other HID device PC already has
Thanks a lot..
Hi MHv_dialog,
If I want to design a customized BLE HID device use DA14580, how could I set the vender and product ID. I havn't found such an interface in your SDK. If I could not, what vender ID and product ID DA14580 currently uses?
Thanks
Hi,
If you have already enabled the DISS (Device information service server), you can edit the information provided in app_dis.h. Search for APP_DIS_MANUFACTURER_NAME.
Here is what the data looks like in our proximity tag (reporter_fh):
/// Manufacturer Name (up to 18 chars)
#define APP_DIS_MANUFACTURER_NAME ("Dialog Semi")
#define APP_DIS_MANUFACTURER_NAME_LEN (11)
/// Model Number String (up to 18 chars)
#define APP_DIS_MODEL_NB_STR ("DA14580")
#define APP_DIS_MODEL_NB_STR_LEN (7)
/// System ID - LSB -> MSB (FIXME)
#define APP_DIS_SYSTEM_ID ("\x12\x34\x56\xFF\xFE\x9A\xBC\xDE")
#define APP_DIS_SYSTEM_ID_LEN (8)
#define APP_DIS_SW_REV DA14580_REFDES_SW_VERSION
#define APP_DIS_FIRM_REV DA14580_SW_VERSION
#define APP_DIS_FEATURES (DIS_MANUFACTURER_NAME_CHAR_SUP | DIS_MODEL_NB_STR_CHAR_SUP | DIS_SYSTEM_ID_CHAR_SUP | DIS_SW_REV_STR_CHAR_SUP | DIS_FIRM_REV_STR_CHAR_SUP | DIS_PNP_ID_CHAR_SUP)
/// PNP ID
#define APP_DISS_PNP_COMPANY_ID_TYPE (0x01)
#define APP_DISS_PNP_VENDOR_ID (0x00D2)
#define APP_DISS_PNP_PRODUCT_ID (0x0580)
#define APP_DISS_PNP_PRODUCT_VERSION (0x0100)