Skip to content

Tool for extraction xiaomi protobuf data from btsnoop log. Only XiaomiSppV2 supported

Notifications You must be signed in to change notification settings

adomerle/xiaomi_protobuf_extractor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Xiaomi Protobuf Extractor

Info

This utility is a tool for analyzing and decrypting packets used for communication with Xiaomi smart bands. Purpose of this utility is to assist in the development of Gadgetbridge. It uses Android BTSnoop log files to analyze packets transmitted between the smart band and the phone.

Usage

  1. Compile the protobuf file
protoc --python_out=. xiaomi.proto
  1. Create and active virtual environment using venv
  2. Install dependencies from requirements.txt
pip3 install -r requirements.txt
  1. Run the extractor.py script using the command:
python3 extractor.py -k auth_key btsnoop_hci.log output.log

Where:

  • auth_key - the authentication key, which can be obtained by following the instructions from Gadgetbridge Wiki
  • btsnoop_hci.log - the Android BTSnoop log file, which also can be obtained by followwing the instrctions from Gadgetbridge Development Wiki
  • output.log - the output file where the decrypted packets will be written

Notes

  • Only XiaomiSppV2 supported for now
  • Tested only with Xiaomi Smart Band
  • xiaomi.proto was taken from Gadgetbridge sources

About

Tool for extraction xiaomi protobuf data from btsnoop log. Only XiaomiSppV2 supported

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages