Skip to content

Bluetooth Central: Discovery of 128bit primary service fails with later versions of gcc. #22051

Closed
@lanvis

Description

@lanvis

Describe the bug
Discovery of 128bit primary service fails with later versions of gcc.
In gatt_find_type(), looks like macro BT_UUID_16 returns wrong value with later gcc versions.

Using gcc ARM version 7.3.1 (BT_UUID_16(uuid)->val) returns 0x2800 (which is correct)

Using gcc ARM version 9.2.1 (BT_UUID_16(uuid)->val) returns 0x2000 (which is incorrect) and leads to a failed discovery.

To Reproduce
Attempt a discovery of a 128bit primary service when configured as a central.

A Ellisys trace is attached showing the Find by value request going out as RFCOMM???
DiscoveryFailGCCNew012020.zip

Environment (please complete the following information):

  • OS: Linux 18.04LTS
  • Toolchain (Zephyr 2.0.0, ARM gcc 9.2.1)

DiscoveryFailGCCNew012020.zip

Metadata

Metadata

Labels

area: BluetoothbugThe issue is a bug, or the PR is fixing a bugpriority: mediumMedium impact/importance bug

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions