A Garmin Connect IQ app for the Garmin Tactix 7 Pro Ballistic (and compatible devices). Passively scans for nearby Bluetooth Low Energy (BLE) devices and correlates detections with GPS coordinates and timestamps — detecting surveillance patterns directly from your wrist.
Part of the Chasing Your Tail NG counter-surveillance ecosystem.
"Supreme excellence consists of breaking the enemy's resistance without fighting." — Sun Tzu
The watch acts as a wearable sensor node — always on your wrist, always scanning. Detected BLE devices are logged with GPS position and time. If the same device appears repeatedly across different locations, CYTW alerts you via vibration. Data is synced to your phone and exported as CYT-compatible JSON for deeper analysis.
[Tactix 7 Pro Ballistic]
├── Passive BLE Scan ──► MAC + RSSI + Timestamp + GPS
├── Repeat Detection ──► Vibration Alert
├── GPS Track ──────────► Movement log
└── BLE Phone Bridge ──► Garmin Connect App
└── HTTP POST ──► CYT JSON Report
├── Chasing Your Tail NG (Pager)
└── Sun Tzu (Google Takeout cross-reference)
| Signal | Capability | Notes |
|---|---|---|
| BLE devices | ✅ Passive scan | MAC address, RSSI, advertising data |
| GPS position | ✅ Full access | Coordinates + altitude + timestamp |
| Repeated devices | ✅ Pattern detection | Cross-location tracking alerts |
| ANT+ devices | ✅ Discovery | Additional sensor detection |
| WiFi networks | ❌ Not available | Connect IQ limitation |
| Bluetooth Classic | ❌ Not available | BLE only (no BR/EDR) |
Note on BLE passive scanning: Garmin uses passive scanning only (ADV IND packets). Device names may not be visible — but MAC addresses and signal strength are sufficient for pattern detection.
- Garmin Tactix 7 Pro Ballistic Edition (primary target)
- Compatible with other Tactix 7 variants and Garmin watches with Connect IQ 4.x+
- Paired smartphone with Garmin Connect app (for data sync and web requests)
- BLE scanner with passive scan loop
- GPS position logger
- Local device registry (property storage)
- Repeat-detection logic with configurable threshold
- Vibration + LED alert on detection
- Watchface/Widget integration (optional passive mode)
- Data transmitted via BLE to Garmin Connect companion app
- HTTP POST to configurable endpoint (CYT server or local)
- CYT-compatible JSON format
Exported JSON is compatible with Chasing Your Tail NG reports. BLE detection events from the watch are timestamped and GPS-correlated, allowing overlay with WiFi/BT data from the Pager.
GPS tracks and device detection timelines can be cross-referenced with Google Takeout location history via the Sun Tzu analyzer.
- Connect IQ SDK (latest)
- Visual Studio Code + Monkey C extension
- Garmin Developer account (free)
- Tactix 7 Pro Ballistic (for on-device testing) or Connect IQ Simulator
# Build with Connect IQ SDK
monkeyc -d tactix7pro -f monkey.jungle -o cytw.prg -y developer_key.der
# Or use VS Code: Ctrl+Shift+P → "Build for Device"# Sideload via USB
cp cytw.prg /GARMIN/APPS/Or use the Connect IQ Store (after submission) or Beta Testing for direct install.
| Component | Status |
|---|---|
| BLE passive scanner | 📋 Planned |
| GPS logger | 📋 Planned |
| Repeat-detection logic | 📋 Planned |
| Vibration / LED alert | 📋 Planned |
| Phone bridge (BLE → HTTP) | 📋 Planned |
| CYT JSON export | 📋 Planned |
| Sun Tzu timeline export | 📋 Planned |
| Tactix 7 Pro on-device test | 📋 Planned |
Documented transparently for contributors:
- No WiFi scanning — cannot enumerate nearby SSIDs
- No Bluetooth Classic — BLE only (passive, ADV IND packets)
- No device names in passive scan — scan response not available
- Limited local storage — property-based only, no file system
- Phone dependency — web requests require paired Garmin Connect app or WiFi
This app is intended for personal counter-surveillance and authorized security research only. Do not use to monitor or track individuals without their explicit consent. Always comply with local laws regarding surveillance and data collection.