Python-скрипт для получения Bluetooth-токена умных часов и браслетов Zepp/Amazfit (Huami). Аутентифицируется на серверах производителя через официальное приложение API, извлекает device auth key и access token необходимые для работы с устройством через альтернативные Bluetooth-клиенты (Gadgetbridge). Также позволяет анализировать структуру API IoT-экосистемы Huami.
# pip (рекомендуется) pip install huami-token # Из исходников (требует uv) git clone https://codeberg.org/argrento/huami-token cd huami-token pip install uv uv pip install -e ".[dev]" # Использование (аккаунт Amazfit/Zepp) huami-token -m amazfit -e your@email.com -p yourpassword # Аккаунт Xiaomi Mi Fitness huami-token -m xiaomi -e your@email.com -p yourpassword # Вывод: auth_token, device_id, encryption_key — для Gadgetbridge
Huami-token теперь размещается на codeberg.org.
Скрипт для получения токена доступа Bluetooth часов или фитнес-браслета с серверов Zepp (Amazfit) или Xiaomi Mi Fitness.
Для использования новых версий часов и браслетов Amazfit и Xiaomi с Gadgetbridge необходим специальный уникальный ключ. Подробнее читайте здесь: https://gadgetbridge.org/basics/pairing/huami-xiaomi-server/.
Если вы хотите связаться с нами
* Matrix: #huami-token:matrix.org
pip install huami-token
uv: https://docs.astral.sh/uv/getting-started/installation/cd).uv pip install -e ".[dev]"После установки доступна команда huami-token:
usage: huami-token [-h] -m {amazfit,xiaomi} [-e EMAIL] [-p PASSWORD] [-b] [-g] [-n]
Obtain Bluetooth Auth key from Amazfit (Zepp) or Xiaomi Mi Fitness.
options:
-h, --help show this help message and exit
-m {amazfit,xiaomi}, --method {amazfit,xiaomi}
Login method. Chose Amazfit for Zepp.
-e EMAIL, --email EMAIL
Account e-mail address
-p PASSWORD, --password PASSWORD
Account Password
-b, --bt_keys Get bluetooth tokens of paired devices
-g, --gps Download GPS files (AGPS_ALM, AGPSZIP, LLE, etc.)
-n, --no_logout Do not logout, keep active session and display app token and access token
Вы также можете запустить напрямую через python main.py, если предпочитаете не устанавливать.
Запустите с вашими учетными данными:
huami-token --method amazfit --email your_email@example.com --password your_password --bt_keys
Пример вывода:
2025-11-14 18:41:43.316 | INFO | huami_token.zepp:login:67 - Logging in...
2025-11-14 18:41:44.268 | INFO | huami_token.zepp:_get_refresh_and_access_tokens:120 - Received access and refresh tokens successfully
2025-11-14 18:41:45.217 | INFO | huami_token.zepp:login:70 - Logged in! User id: 1234567890
2025-11-14 18:41:45.217 | INFO | huami_token.zepp:get_devices:187 - Getting linked devices...
Device 0:
MAC: AB:CD:EF:12:34:56, Active: Yes
Key: 0xa3c10e34e5c14637eea6b9efc06106
2025-11-14 18:41:46.400 | INFO | huami_token.zepp:logout:178 - Logged out.
Logged out.
Здесь Key — это уникальный ключ привязки для ваших часов. Вкладка Active показывает, активно ли устройство.
huami-token --method xiaomi --email your_email@example.com --password your_password --bt_keys
Пример вывода:
2025-11-14 18:41:43.316 | INFO | huami_token.xiaomi:login:81 - Logging in to Xiaomi...
2025-11-14 18:41:44.268 | INFO | huami_token.xiaomi:login:85 - Logged in! User id: 1234567890
Device 0: Amazfit Band 7
MAC: AB:CD:EF:12:34:56
Key: 0xa3c10e34e5c14637eea6b9efc06106
Logged in successfully.
user_id=1234567890
Примечание: Загрузка GPS (--gps) для учетных записей Xiaomi пока не поддерживается.
Этот скрипт может загружать файлы AGPS (требуется вход в систему):
huami-token --method amazfit --email your_email@example.com --password your_password --gps
Загружаются следующие файлы:
* AGPS_ALM -- cep_1week.zip
* AGPSZIP -- cep_7days.zip
* LLE -- lle_1week.zip
* AGPS -- cep_pak.bin
* EPO -- EPO.ZIP
* LTO — файл данных LTO
uv pip install -e ".[dev]"
# Run tests
pytest -m "not integration"
# Lint
ruff check .
# Type check
mypy huami_token/
# Build wheel
uv build
Этот проект лицензирован по лицензии MIT — подробности см. в файле LICENSE.md