{
  "added_at": "2026-11-02",
  "additional_evidence_urls": [
    "https://github.com/i-soxi/even-g2-protocol/blob/b227335f5fbecb7d4ede3748c36e098ef88850fa/docs/ble-uuids.md",
    "https://github.com/i-soxi/even-g2-protocol/blob/b227335f5fbecb7d4ede3748c36e098ef88850fa/docs/packet-structure.md",
    "https://github.com/i-soxi/even-g2-protocol/blob/b227335f5fbecb7d4ede3748c36e098ef88850fa/docs/services.md",
    "https://github.com/i-soxi/even-g2-protocol/blob/b227335f5fbecb7d4ede3748c36e098ef88850fa/docs/teleprompter.md",
    "https://github.com/i-soxi/even-g2-protocol/blob/b227335f5fbecb7d4ede3748c36e098ef88850fa/proto/g2_protocol.proto",
    "https://github.com/i-soxi/even-g2-protocol/blob/b227335f5fbecb7d4ede3748c36e098ef88850fa/examples/teleprompter/teleprompter.py",
    "https://github.com/i-soxi/even-g2-protocol/blob/b227335f5fbecb7d4ede3748c36e098ef88850fa/examples/teleprompter/README.md",
    "https://github.com/i-soxi/even-g2-protocol/blob/b227335f5fbecb7d4ede3748c36e098ef88850fa/CONTRIBUTING.md"
  ],
  "category": "reconstruction-cases",
  "description_en": "Documents the Bluetooth Low Energy protocol between the Even app and Even Realities G2 smart glasses, worked out from captured traffic: GATT characteristic UUIDs, an 8-byte transport header with sequence, multi-packet and two-byte service-ID fields, a CRC-16/CCITT over the payload, and protobuf payloads with draft .proto definitions. A Python example built on bleak sends the seven-packet session handshake and drives the teleprompter service to show custom text. The README’s status table marks connection, handshake, teleprompter and calendar widget as working, notifications as partial, and Even AI and navigation as still under research.",
  "description_zh": "记录 Even 应用与 Even Realities G2 智能眼镜之间的低功耗蓝牙协议，依据抓取的通信流量推断得出：包括 GATT 特征 UUID、含序号、分包和双字节服务 ID 字段的 8 字节传输头、针对载荷计算的 CRC-16/CCITT，以及 protobuf 编码的载荷和初步的 .proto 定义。基于 bleak 的 Python 示例会发送七个报文的会话握手，并调用提词器服务显示自定义文字。README 的状态表将连接、握手、提词器和日历小组件标为可用，通知标为部分可用，Even AI 和导航仍在研究中。",
  "entry_url": "https://awesomerea.org/resources/even-g2-ble-protocol-case/",
  "entry_url_zh": "https://awesomerea.org/zh/resources/even-g2-ble-protocol-case/",
  "evidence_url": "https://github.com/i-soxi/even-g2-protocol/blob/b227335f5fbecb7d4ede3748c36e098ef88850fa/README.md",
  "group": "cases",
  "id": "even-g2-ble-protocol-case",
  "json_url": "https://awesomerea.org/resources/even-g2-ble-protocol-case/record.json",
  "kind": "case-study",
  "markdown_url": "https://awesomerea.org/resources/even-g2-ble-protocol-case/index.md",
  "markdown_url_zh": "https://awesomerea.org/zh/resources/even-g2-ble-protocol-case/index.md",
  "name": "Even G2 protocol: reverse-engineering Even Realities G2 smart-glasses BLE traffic",
  "name_zh": "Even G2 协议：逆向分析 Even Realities G2 智能眼镜的 BLE 通信",
  "record_type": "resource",
  "relationship": "independent-reconstruction",
  "requirements": [
    "The reviewed main commit of 2026-01-03 is a documentation snapshot with no releases or tags. Only the teleprompter has example code, and docs/teleprompter.md is marked work in progress; the .proto header says field numbers and types are inferred from captured packets and may be incomplete or wrong, and several field meanings carry question marks. The README reports the calendar widget working but includes no calendar example or detailed format, and CONTRIBUTING.md labels Even AI “Cracked!” with its request format unclear while the README still lists it as research.",
    "Using the example needs Even G2 glasses and a host with BLE and Python with bleak 0.21+; it scans for device names containing G2 and connects to the left arm’s device, or the right one with --right. The README says the glasses use standard BLE with no special pairing, and the example’s handshake consists of fixed capability messages and the current time, with no keys. The repository contains no Even app or glasses firmware.",
    "CONTRIBUTING.md describes collecting Android Bluetooth HCI snoop logs while using features in the official app, and the repository commits four such raw logs from the author’s sessions; they are not limited to the glasses’ traffic. No tests or verification beyond the README’s status table are provided.",
    "No license file is present and GitHub detects none, so the documentation and code carry no reuse grant. The README calls this an unofficial community project for educational purposes, not affiliated with Even Realities, and credits the Even Realities community with the protocol research."
  ],
  "requirements_zh": [
    "所审阅的 main 提交（2026-01-03）是一份文档快照，没有发布版本或标签。只有提词器附带示例代码，docs/teleprompter.md 也标注为仍在编写中；.proto 文件开头说明字段编号和类型是从抓包推断的，可能不完整或有误，部分字段含义还带有问号。README 称日历小组件可用，但没有提供日历示例或详细格式；CONTRIBUTING.md 将 Even AI 标为“Cracked!”，同时注明请求格式尚不清楚，而 README 仍将其列为研究中。",
    "运行示例需要 Even G2 眼镜，以及支持 BLE、装有 Python 和 bleak 0.21+ 的主机；示例会扫描名称含 G2 的设备，默认连接左侧镜腿的设备，加 --right 则连接右侧。README 称眼镜使用标准 BLE，无需特殊配对；示例中的握手由固定的能力查询报文和当前时间组成，不含任何密钥。仓库不包含 Even 应用或眼镜固件。",
    "CONTRIBUTING.md 介绍了在官方应用中使用各项功能时采集 Android 蓝牙 HCI snoop 日志的方法，仓库也提交了作者会话中的四份原始日志；这些日志并不只包含眼镜的通信。除 README 的状态表外，项目没有提供测试或其他验证。",
    "仓库没有许可证文件，GitHub 也未检测到许可证，因此文档和代码均未授予再使用权利。README 称这是用于教育目的的非官方社区项目，与 Even Realities 无关，并将协议研究归功于 Even Realities 社区。"
  ],
  "targets": [
    "protocol"
  ],
  "url": "https://github.com/i-soxi/even-g2-protocol",
  "verification": "source-reviewed",
  "verified_at": "2026-10-20"
}
