Bluetooth

From sigrok
Jump to navigation Jump to search

This page is under heavy construction, currently holds unassorted developer notes, and needs more consideration and cleanup before it will be useful.

Some test and measurement devices communicate via Bluetooth instead of RS232, USB or TCP.

See the README.devices document for an outline of conn= specifications, as well as other connection types than Bluetooth.

Bluetooth Classic

Bluetooth Classic provides a standard way for traditional serial communication, which a sigrok suported platform can make available like any other (RS232 or USB based) COM port. Either use optional external utilities to create a virtual COM port that sigrok can connect to, or use libsigrok's builtin support for RFCOMM aka SPP on those platforms which support it.

 ... -d <driver>:conn=bt/rfcomm/<mac-address> ...

Please note that colons may not be available within the mac-address field, because they separate the driver name and options (like conn=) of the -d argument already. Alternative use of dashes is supported.

TODO Outline how to setup the COM port (potentially depending on the platform). Provide examples of sigrok drivers using these COM ports.

Bluetooth Low Energy (BLE)

BLE has no common concept of traditional serial communication, which results in BLE supporting devices and cables/adapters/modules/chips to have to (re-)invent their individual way of communicating to PC/mobile side software. Thus each involved sigrok driver will need specific support code to communicate to BLE attached devices, unless a common communication layer provides support. An alternative can be the use of external helpers which relay BLE communication to some form that is already supported by involved sigrok drivers (like: COM port, TCP socket).

The libsigrok component's serial layer provides support for some BLE chips or modules on some of the sigrok supported platforms. At the time of this writing this includes: BLE122, nRF51, TI CC254x. The syntax to specify connections is like this:

 ... -d <driver>:conn=bt/<type>/<mac-address> ...

Please note that colons may not be available within the mac-address field, because they separate the driver name and options (like conn=) of the -d argument already. Alternative use of dashes is supported.

List of devices

The list is very probably incomplete. When in doubt, check reality and update this wiki page.

Natively supported devices:

  • EEVBlog 121GW (when BLE is supported on the platform), use -d eevblog-121gw:conn=bt/ble122/<addr>

Supported by external helpers:

See also