因此,我目前正在規劃藍牙低耗能設備的代碼,該藍牙低功耗設備將使用藍牙規範中的HID over GATT配置文件進行操作。我已經閱讀了HID規範1.11和使用表格1.12,但我找不到任何關於Usage_pages和Usages的最低要求使用情況。在報告描述符中HID用法的裸要求是什麼?
由於我們正在實施主機和設備,因此我們的計劃是爲報告描述符使用供應商定義的使用頁面,但由於我們的目標是快速連接和低功耗,因此我不想在GATT上的HID的報告定義階段發送比我必須多的字節。因此,我正在考慮刪除通常會標記輸入/輸出的所有用法,因爲它們看起來只有語義。
這裏是我考慮的一個樣本:
Usage_Page(Vendor Defined)
Usage(Vendor 1)
Collection(Application)
Collection(Logical) ; First Collection and Report
Report_ID(1)
Usage_Page(Button) ; This is what the Specification seems to encourage
Usage_Minimum(Button 1)
Usage_Maximum(Button 3)
Logical_Minimum(0) ; Logical Limits
Logical_Maximum(1)
Report_Size(3) ; 3 Bits corresponding to the Buttons
Report_Count(1) ; 1 of the 3 Bit set
Input(Data, Variable, Absolute) ;Make it an input
Report_Size(5)
Report_Count(1)
Input(Constant) ; Pad the transmitted Byte
Collection End
Collection End
當我看這個,我看到了很多,因爲我不使用本地解析器,什麼也不做額外的字節。這些範圍從用途到甚至邏輯最小/最大值。 業內人士或者對標準有更好的認識(無論是HID或GATT還是USB HID)都會告訴我,如果我只是將報告描述符定義爲僅使用頂級用法並且不使用邏輯最高配置?
謝謝!這裏所關心的是儘量減少配對時間,所以這完全回答了我關於報告描述符的問題。作爲一個方面說明,我不介意使用預先定義的使用說明,但是,因爲我真的想爲單個指示器LED發送RGB數據,所以我沒有發現任何內容(除了字母數字使用情況頁面)預期的情況。如果有一種解決方法不涉及在數據中傳輸矩陣索引,我很樂意聽到它。 – hanseltime
事實上,RGB LED在95年似乎是科幻小說。太糟糕了,他們沒有把它包含在Led頁面中。我的旁註與上面發佈的報告描述符相關,只有3個按鈕。我必須同意字母數字顯示看起來像過去沒有人實現過的規範,即使[HUTRR29b](http://www.usb.org/developers/hidpage/HUTRR29b.pdf)可能允許聲明一個1x1顯示器,我不會推薦它。 – Nipo