Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ clean: ## Remove the virtual environment and the esphome build directory

.PHONY: help
help: ## Show help messages for make targets
@grep -E '^[a-zA-\/Z_-]+:.*?## .*$$' $(firstword $(MAKEFILE_LIST)) \
@grep -E '^[a-zA-Z0-9_/.-]+:.*?## .*$$' $(firstword $(MAKEFILE_LIST)) \
| sort \
| awk 'BEGIN {FS = ":.*?## "}; {printf "\033[32m%-30s\033[0m %s\n", $$1, $$2}'

Expand Down
25 changes: 25 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,31 @@ Tested with M5Stack NanoC6 and Tesla firmwares 2024.26.3.1.
- [x] Charging flap open / closed (only when vehicle is awake)
- [x] BLE signal strength

## Configuration

### Polling Intervals

The component supports configurable polling intervals to balance responsiveness and battery life:

```yaml
tesla_ble_vehicle:
# ... other configuration ...

# Polling intervals (in seconds)
vcsec_poll_interval: 10 # Vehicle status polling (default: 10s, range: 5-300s)
infotainment_poll_interval_awake: 30 # Data polling when awake (default: 30s, range: 10-600s)
infotainment_poll_interval_active: 10 # Data polling when active (default: 10s, range: 5-120s)
infotainment_sleep_timeout: 660 # Wake window duration (default: 11min, range: 1-60min)
```

**Polling Types:**
- **VCSEC**: Basic vehicle status (sleep/awake, locked/unlocked, user presence) - safe to poll when asleep
- **Infotainment Awake**: Detailed data (battery, charging state) when awake but not active
- **Infotainment Active**: Frequent updates when charging, unlocked, or user present

**Smart Wake Management:**
The system respects Tesla's sleep behavior by polling infotainment data only during an 11-minute wake window, then allowing the vehicle to sleep. Active states (charging/unlocked/user present) override this timeout for continuous monitoring.

## Usage

> For ESPHome dashboard, see [`tesla-ble-example.yml`](./tesla-ble.example.yml)
Expand Down
Loading