{
  "added_at": "2026-11-06",
  "additional_evidence_urls": [
    "https://github.com/jkfran/stadiacast/blob/61e8aee978a8514a5c1aaa39fcaae1bb5dfcde39/README.md"
  ],
  "category": "reconstruction-cases",
  "description_en": "Stadiacast recreates the network service used by the Stadia Controller's Wi-Fi firmware so the controller can connect to a local computer. The receiver answers boot and discovery requests, completes WebRTC and DTLS sessions, decodes input and sends rumble commands. Protocol notes record findings from firmware reading and live controller runs, with protobuf schemas and receiver code in the repository.",
  "description_zh": "Stadiacast 重建 Stadia 手柄 Wi-Fi 固件所依赖的网络服务，让手柄连接本地电脑。接收端响应启动和发现请求，完成 WebRTC、DTLS 会话，解码按键输入并发送震动命令。协议文档记录了固件阅读和真机交互所得的结果，仓库还提供 protobuf 结构与服务端代码。",
  "entry_url": "https://awesomerea.org/resources/stadiacast-case/",
  "entry_url_zh": "https://awesomerea.org/zh/resources/stadiacast-case/",
  "evidence_url": "https://github.com/jkfran/stadiacast/blob/61e8aee978a8514a5c1aaa39fcaae1bb5dfcde39/docs/protocol.md",
  "group": "cases",
  "id": "stadiacast-case",
  "json_url": "https://awesomerea.org/resources/stadiacast-case/record.json",
  "kind": "case-study",
  "markdown_url": "https://awesomerea.org/resources/stadiacast-case/index.md",
  "markdown_url_zh": "https://awesomerea.org/zh/resources/stadiacast-case/index.md",
  "name": "Stadiacast: reconstructing the Stadia Controller's Wi-Fi service",
  "name_zh": "Stadiacast：重建 Stadia 手柄的 Wi-Fi 服务",
  "record_type": "resource",
  "relationship": "independent-reconstruction",
  "requirement_facets": [
    "prerequisites",
    "prerequisites",
    "prerequisites",
    "license"
  ],
  "requirements": [
    "A Stadia Controller with Wi-Fi firmware; the author tested ota.282115.",
    "A Windows, macOS or Linux host on the controller's network; running from source requires Python 3.11+.",
    "Linux needs root or CAP_NET_BIND_SERVICE to bind the required low ports.",
    "MIT license."
  ],
  "requirements_zh": [
    "需要运行 Wi-Fi 固件的 Stadia 手柄；作者测试的是 ota.282115。",
    "需要与手柄位于同一网络的 Windows、macOS 或 Linux 主机；从源码运行需要 Python 3.11 及以上版本。",
    "Linux 上绑定所需低端口需要 root 权限或 CAP_NET_BIND_SERVICE。",
    "MIT 许可证。"
  ],
  "targets": [
    "protocol"
  ],
  "url": "https://github.com/jkfran/stadiacast",
  "verification": "source-reviewed",
  "verified_at": "2026-11-06"
}
