[Bluetooth][meta] Implement HID profile feature

RESOLVED FIXED

Status

Firefox OS
Bluetooth
RESOLVED FIXED
5 years ago
2 years ago

People

(Reporter: shawnjohnjr, Assigned: louis)

Tracking

Firefox Tracking Flags

(Not tracked)

Details

(Whiteboard: [ft:conndevices])

Attachments

(3 attachments)

Implement HID profile for gecko.
Assignee: nobody → shuang
Ben, it's all yours :-)
Assignee: shuang → btian
Sorry not sure Ben is going to do it. Let Eric decide :)
Assignee: btian → nobody
Blocks: 890186

Comment 3

5 years ago
TODO:
- dom bluetooth change (bug 890186)
- Gaia settings change

Updated

5 years ago
Depends on: 899014

Updated

5 years ago
No longer blocks: 890186
Depends on: 890186

Comment 4

5 years ago
TODO update:
- implement dom bluetooth HID (bug 899014)
- map key-char for bluetooth keyboard (bug 890186)
- authorize for incoming connections (bug 889795)
Depends on: 889795

Updated

4 years ago
Depends on: 915534

Updated

4 years ago
Blocks: 892178
Bug 943809 is under review, once that bug is done, dom bluetooth HID part is done for bluez/bluedroid as the backend
Blocks: 980768

Updated

3 years ago
See Also: → bug 1017944

Updated

3 years ago
Blocks: 1187806

Updated

3 years ago
No longer blocks: 1187806
(Assignee)

Updated

3 years ago
Depends on: 1223729
(Assignee)

Updated

3 years ago
Depends on: 1223732
(Assignee)

Updated

2 years ago
No longer depends on: 1223729
(Assignee)

Updated

2 years ago
Depends on: 1223729
(Assignee)

Updated

2 years ago
No longer depends on: 1223729
(Assignee)

Updated

2 years ago
Depends on: 1235523
(Assignee)

Comment 6

2 years ago
Expect to resolved bug 880759 (HID implementation) including,
1) complete gecko implementation - bug 915534
2) complete related daemon implementation - bug 1223732
3) complete a test app to pass required PTS test cases - bug 1235523
in 2016 Q1 to pass PTS.
(Assignee)

Updated

2 years ago
Depends on: 953019
(Assignee)

Updated

2 years ago
Depends on: 1252787
(Assignee)

Updated

2 years ago
Assignee: nobody → lochang
(Assignee)

Updated

2 years ago
No longer depends on: 953019
(Assignee)

Comment 7

2 years ago
We have passed the PTS(Profile Tuning Suite) of bluetooth HID profile v1.0.
A guide for PTS usage is at https://wiki.mozilla.org/B2G/QA/Bluetooth_PTS.
**Note: Please refer to wiki for required PTS 6.4.0 setup before testing.

The attachments are the workspace file including the PICS value of HID profile v1.0
(*.pqw6, for PTS new version 6.4.0 [1]) and a hack for testing HID features functions
including virtual_unplug, get_report, set_report and send_data [2]. 

[1] In PTS v6, there are no *.picsx for each Bluetooth profile anymore, all *.picsx are integrated into the only workspace file *.pqw6. (FYI: Current test shows that, even all files in project folder are removed and only the *.pqw6 left, the PTS works fine.)

[2] Since there is no user cases for these feature functions yet, so we only provide a hack to test
these feature functions for passing bluetooth HID profile v1.0. You can call a function by renaming
the host device. Rename the host device to "vir" will call virtual_unplug, "get" will call get_report,
"set" will call set_report and "sen" will call send_data.
(Assignee)

Comment 8

2 years ago
We can't pass the PTS of HOGP(HID Over Gatt Profile) profile since the stack problem. Also we have tested several android devices and not all of them can pass PTS of HOGP profile [1]. However, we are able to
connect with remote controller of nexusplayer-l through HOGP.

[1] We have tested several android device including Motorola nexus6-l, HTC One mini2-jb, LG nexus5-l, Sony z3-l. LG nexus5-l and Sony z3-l can pass PTS of HOGP profile but Motorola nexus6-l, HTC One mini2-jb can't pass PTS of HOGP profile.
(Assignee)

Comment 9

2 years ago
Created attachment 8733657 [details]
workspace file of bluetooth HID profile including PICS(*.pqw6)
(Assignee)

Comment 10

2 years ago
Created attachment 8733661 [details] [diff] [review]
Hack for testing HID feature functions
(Assignee)

Comment 11

2 years ago
(In reply to Louis Chang [:lochang] from comment #8)
> We can't pass the PTS of HOGP(HID Over Gatt Profile) profile since the stack
> problem. Also we have tested several android devices and not all of them can
> pass PTS of HOGP profile [1]. However, we are able to
> connect with remote controller of nexusplayer-l through HOGP.

The attachment (*.cfa) is one of the test case sniff-log. We can't pass read and write related test cases of HOGP profile. The bluedroid stack should automatically send specific read or write command during connecting to the PTS. However, the PTS doesn't receive the command and keep waiting for the stack [1].

[1] Take the test case (TC_HGRF_RH_BV_01_I) we attached as an example, you can see frames exchanged between phone and PTS (View -> frame display -> PTS). We can see that PTS last sends a message: "Please send Read or ...", then the process is blocked.
(Assignee)

Comment 12

2 years ago
Created attachment 8733814 [details]
sniff-log of test case TC_HGRF_RH_BV_01_l (*.cfa)
(Assignee)

Updated

2 years ago
Depends on: 1258962
(Assignee)

Comment 13

2 years ago
The dependent bugs are all fixed. We are now support HID profile. The remaining HOGP problems are showed in comment 8, comment 11. And the PTS test cases please refer to comment 7.
Status: NEW → RESOLVED
Last Resolved: 2 years ago
Resolution: --- → FIXED

Updated

2 years ago
Whiteboard: [ft:conndevices]
Well done. Thanks!
You need to log in before you can comment on or make changes to this bug.