2010/12/03

MCAP and CSP testing in BlueZ

HDP (Health Device Profile) uses MCAP as a session protocol. In BlueZ, MCAP is implemented at userspace, but inside bluetoothd service, so the implementation is available for BlueZ plug-ins only (which currently must be statically compiled into the service).

Moreover, BlueZ MCAP includes CSP (clock synchronization protocol), which is an optional part of MCAP, but HDP currently does not use this feature, so CSP implementation is inacessible.

From time to time, there is a need to test MCAP with PTS tool (official testing tool provided by Bluetooth SIG). In order to allow MCAP and CSP testing, and allow playing with them as well, we at Signove put together a toolset:

a) A patched BlueZ service with a MCAP D-Bus "plug-in". It can be found at http://gitorious.org/bluez-epx, branch pts. It is rebased with current BlueZ every month or so. We normally run PTS tests again when rebasing.

b) The IUT testing script, that can be found at HDPy project, at scripts/bluez/pts folder.

Both parts are based on prior open-source work by OpenHealth.

The testing script (mcap_suite.py) runs PTS tests in sequence and semi-automatically. Normally, the operator just needs to press Enter to execute each step; doing the whole test suite is fast and easy, and can be made even faster by using PTS scripting capabilities. Our script allows tests to be fast-fowarded or skipped as well, and CSP tests are executed too.

It is not a "pretty" tool, it is for developers, by developers. We plan to release a similar tool for HDP testing as well in the next few days.
blog comments powered by Disqus