My Turbo Tero appears on first glance to connect to the integration but all entitys are unavalible.
This bike doesnt seem to have a way to force a bluetooth connection, the connection appears to originate from the app. I have tried to quickly swap between the Specalized app and HA and add the pin but these attempts have been unsuccessful.
The Pin is randomized on each connection attempt.
Unfortunately the integration doesnt realize the auth failed.
This error originated from a custom integration.
Logger: custom_components.specialized_turbo
Source: components/bluetooth/active_update_coordinator.py:130
Integration: Specialized Turbo (documentation, issues)
First occurred: 8:19:13 PM (3 occurrences)
Last logged: 8:25:52 PM
C8:64:AA:9F:79:D9: Bluetooth error whilst polling: Bluetooth GATT Error address=C8:64:AA:9F:79:D9 handle=36 error=5 description=Insufficient authentication
`This error originated from a custom integration.
Logger: custom_components.specialized_turbo.coordinator
Source: custom_components/specialized_turbo/coordinator.py:371
Integration: Specialized Turbo (documentation, issues)
First occurred: 8:19:13 PM (3 occurrences)
Last logged: 8:25:52 PM
TCX identification handshake failed, using unencrypted session
Traceback (most recent call last):
File "/usr/local/lib/python3.14/site-packages/bleak_esphome/backend/client.py", line 77, in _async_wrap_bluetooth_operation
return await func(self, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.14/site-packages/bleak_esphome/backend/client.py", line 614, in read_gatt_char
return await self._client.bluetooth_gatt_read(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
self._address_as_int, characteristic.handle, timeout
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "/usr/local/lib/python3.14/site-packages/aioesphomeapi/client.py", line 1117, in bluetooth_gatt_read
return await self._bluetooth_gatt_read(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
...<4 lines>...
)
^
File "/usr/local/lib/python3.14/site-packages/aioesphomeapi/client.py", line 1148, in _bluetooth_gatt_read
resp = await self._send_bluetooth_message_await_response(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
...<5 lines>...
)
^
File "/usr/local/lib/python3.14/site-packages/aioesphomeapi/client.py", line 731, in _send_bluetooth_message_await_response
raise BluetoothGATTAPIError(BluetoothGATTError.from_pb(resp))
aioesphomeapi.core.BluetoothGATTAPIError: Bluetooth GATT Error address=C8:64:AA:9F:79:D9 handle=23 error=5 description=Insufficient authentication
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/config/custom_components/specialized_turbo/coordinator.py", line 371, in _identify_tcx
response = await self._client.read_gatt_char(self._char_request_read)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.14/site-packages/bleak/__init__.py", line 711, in read_gatt_char
return await self._backend.read_gatt_char(characteristic, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.14/site-packages/bleak_esphome/backend/client.py", line 104, in _async_wrap_bluetooth_operation
raise BleakError(str(ex)) from ex
bleak.exc.BleakError: Bluetooth GATT Error address=C8:64:AA:9F:79:D9 handle=23 error=5 description=Insufficient authentication`
My Turbo Tero appears on first glance to connect to the integration but all entitys are unavalible.
This bike doesnt seem to have a way to force a bluetooth connection, the connection appears to originate from the app. I have tried to quickly swap between the Specalized app and HA and add the pin but these attempts have been unsuccessful.
The Pin is randomized on each connection attempt.
Unfortunately the integration doesnt realize the auth failed.