Skip to content

Latest commit

 

History

12 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ESP32 GATT Debug Tool

An ESP-IDF firmware that impersonates a generic iTag-style Bluetooth LE tracker, so client software can be developed and debugged against a device whose behaviour is known.

Why

iTag clones advertise the same services while implementing different subsets of them, so a client that works against one tag may fail against the next. This tool allows for a client to be easily tested by giving access to what a client is receiving rather than what a bluetooth library reports it is sending.

sdkconfig.defaults is deliberately target-agnostic, so idf.py set-target <chip> picks up the working NimBLE configuration for any supported part rather than only the one it was developed on.

Running it

idf.py set-target esp32h2      # or any other NimBLE-capable target
idf.py build
idf.py flash
idf.py monitor                 # CTRL+T then CTRL+X to exit
idf.py fullclean

scripts/get_services.sh [-m MAC] dumps the GATT table of a device from a Linux host, which is the quickest way to confirm the firmware is advertising what you expect.

Requirements

  • ESP-IDF, installed and sourced so idf.py is on the path.
  • A NimBLE-capable ESP32 part. Developed on the ESP32-H2.
  • scripts/get_services.sh needs BlueZ (gatttool / bluetoothctl) on the host.

About

ESP‑IDF firmware that emulates a generic iTag‑style BLE peripheral, surfacing GAP events and GATT characteristic accesses in real time to debug BLE central implementations.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages