Skip to main content

PyTeslaBLE

Python library for communicating with Tesla vehicles directly using the BLE API

:bangbang: WARNING: This library is not supported by Tesla, and it could break at any moment. It should be noted that this library stores private keys and other sensitive data unencrypted on your machine. I am not responsible for any (extremely unlikely) damage done to your car.

Usage

pip install pyteslable

from pyteslable import BLE
tesla_ble = BLE("private_key.pem")

print("Scanning for vehicles...")
list = tesla_ble.scan()
print(list)

# Connect to a specific vehicle by BLE address
vehicle = list.getAddress("05:eb:6d:b7:f7:92")
vehicle.connect()
if not vehicle.isAdded():
  print("Tap your keycard on the center console")
  vehicle.whitelist()
# Now we are ready to send commands!
vehicle.unlock()

Cryptography Library Modification

If you have the latest cryptography library, you will likely get an error about not supporting 4-bit nonces. For now, the best solution I have is to simply modify the if statement that produces the error.

Credits

Huge props to Lex Nastin for putting together some documentation for the Tesla BLE API. Check out the documentation here.

Also many thanks to Kevin Dewald from Neuralink for the BLE library!

Release files for pyteslable 0.1.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pyteslable 0.1.4
File Size Uploaded
pyteslable-0.1.4.tar.gz 38.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pyteslable 0.1.4
File Interpreter ABI Platform
pyteslable-0.1.4-py3-none-any.whl Python 3 none any Details

Total release size: 76.0 kB

Release files / pyteslable-0.1.4.tar.gz

Download URL pyteslable-0.1.4.tar.gz
Size 38.1 kB
Tags Source
SHA-256 checksum
How to use checksums
51f0e178bc9f90944a554c9551d3fb91adab13ca84bf79ed3a5094a0f822a056
BLAKE2b-256 checksum
How to use checksums
28ff9f48c271d81c72d521c9eb5bf26cd5bcedb34b606a7da9d74d871a997cee
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.7.1 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.13

Release files / pyteslable-0.1.4-py3-none-any.whl

Download URL pyteslable-0.1.4-py3-none-any.whl
Size 37.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
130ca14d207d97e2ac9d7b2b9be96b538b92803f93b113f8c85f89dd68b3483b
BLAKE2b-256 checksum
How to use checksums
04713769d9af2faf715b5e3b302c56ceb868598df4a9189a4c179b7aa498cc3e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.7.1 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.13

Release history Release notifications | RSS feed

This release

0.1.4 This release

2 release files

0.1.3

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page