Files
Abtin Keshavarzian 0a2cad1e65 [dataset] remove legacy wake-up channel from operational dataset (#13614)
The wake-up channel TLV was originally introduced into OpenThread as part
of early experimental prototyping for wake-up / peer-to-peer features
before the design was finalized in the Thread Group. Unfortunately, it
was added directly to the public Operational Dataset structures and
MeshCoP definitions without any compile-time feature flags or build
guards, exposing it as standard dataset API.

The finalized Thread Direct specification has significantly evolved and
no longer utilizes a network-wide wake-up channel in the Operational
Dataset. As a result, retaining wake-up channel support in the dataset is
obsolete, non-compliant with the spec, and can lead to confusion when
configuring Thread networks.

This commit removes the legacy wake-up channel from the Operational
Dataset across public APIs, core modules, CLI, and tooling:

- Public API (`include/openthread/dataset.h`):
  - Removes `mIsWakeupChannelPresent` from `otOperationalDatasetComponents`.
  - Removes `mWakeupChannel` from `otOperationalDataset`.
  - Removes `OT_MESHCOP_TLV_WAKEUP_CHANNEL` from `otMeshcopTlvType`.

- Core MeshCoP & MLE (`src/core/`):
  - Removes `kWakeupChannel` from `MeshCoP::Dataset` components, types,
    and TLV definitions (`meshcop_tlvs.hpp`).
  - Removes `WakeupChannelTlv` handling and default generation from
    `ActiveDatasetManager` (`dataset_manager_ftd.cpp`).
  - Removes `kWakeupChannel` from `Mle::Tlv::Type` (`mle_tlvs.hpp`).

- CLI and Tooling:
  - Removes `dataset wakeupchannel` CLI command and its documentation
    (`cli_dataset.cpp`, `cli_dataset.hpp`, `README_DATASET.md`).
  - Cleans up `dataset wakeupchannel` parsing and buffer helpers in the
    OTCI Python utility (`tools/otci/otci/otci.py`).
  - Removes `WakeupChannel` entry and TLV type from the TCAT BLE client
    (`tools/tcat_ble_client/`).
2026-09-22 08:30:04 -07:00
..
2025-06-18 23:09:47 +09:00