Raspberry Pi'de TeslaMate Çalıştırma
Bu yazı, PiMyLifeUp - Running TeslaMate on the Raspberry Pi kaynağından Türkçe'ye çevrilerek hazırlanmıştır.
Bu eğitimde, Raspberry Pi'nizde TeslaMate'i nasıl çalıştıracağınızı göstereceğiz.
![]()
TeslaMate, bir Tesla araba hakkında çok sayıda ayrıntıyı takip etmenizi sağlayan bir veri kaydedicisidir. Bunu, Tesla API'sini yoklayarak ve döndürdüğü verileri Raspberry Pi'nizde çalışan bir PostgreSQL veritabanına kaydederek başarır.
Bu yazılım, bir Tesla'ya sahip olan ve onun döndürdüğü verileri takip etmekle ilgilenen kişiler için mükemmeldir. Bu verileri hatta arabanızın çeşitli özelliklerini otomatikleştirmek için Home Assistant gibi bir yazılımla entegre edebilirsiniz.
Raspberry Pi, 7/24 çalıştırması pahalı olmayan düşük güçlü bir cihaz olduğundan TeslaMate ile mükemmel bir eşleşme sağlar.
Raspberry Pi'nizde Teslamate'i çalıştırma sürecini önemli ölçüde basitleştirmek için, bunu bir Docker konteyneri üzerinden çalıştıracağız. Bu, birkaç farklı yazılım parçasını kurup yapılandırmak zorunda kalmamızı önler.
Raspberry Pi'nizi TeslaMate'i Çalıştırmaya Hazırlama
Raspberry Pi'nizde TeslaMate'i kurup çalıştırabilmemiz için, bazı ilk kurulum adımlarından geçmemiz gerekiyor.
Sonraki birkaç adımda, Raspberry Pi'yi güncelleyecek ve Docker compose'un kurulu olduğundan emin olacağız.
1. Daha ileri gitmeden önce, mevcut paketler listesini güncellemeli ve güncel olmayan tüm paketleri yükseltmeliyiz.
Terminalde aşağıdaki komutu kullanarak her iki görevi de gerçekleştirebiliriz.
sudo apt update
sudo apt upgrade
2. Ardından, Raspberry Pi'nize Docker kurma rehberimizi takip etmeniz gerekiyor.
Docker, Raspberry Pi'nizde TeslaMate'i çalıştırmayı önemli ölçüde daha basit hale getirecek.
Raspberry Pi'nize TeslaMate Kurulumu
Artık hazırlandığımıza göre, Raspberry Pi'nize TeslaMate kurmak güvenlidir.
Bu adımlar için, TeslaMate'i çalıştırmak için ihtiyaç duyduğumuz tüm hizmetleri kuracak bir Docker Compose betiği oluşturacağız.
3. Raspberry Pi'mize TeslaMate kurmadan önce, ana dizinimizde "teslamate" adlı bir dizin oluşturmamız gerekiyor.
Aşağıdaki komutu çalıştırarak bu klasörü oluşturmak için mkdir komutunu kullanabilirsiniz.
mkdir ~/teslamate
4. Artık yeni dizinimizi oluşturduğumuza göre, içine geçmek için cd komutunu kullanmamız gerekiyor.
cd ~/teslamate
5. Terminalde aşağıdaki komutu kullanarak "docker-compose" dosyamızı yazmaya başlayabiliriz.
Bu compose dosyası, Raspberry Pi'mizde dört farklı hizmet kuracak.
- Kurduğu ilk uygulama TeslaMate'in kendisidir.
- Ardından, TeslaMate'in verilerini saklaması için ihtiyaç duyduğu veritabanı hizmeti gelir. Bu durumda, bu PostgreSQL olacak.
- Ayrıca, Grafana da bir Docker konteyneri içinde kurulacak. Grafana, TeslaMate'in Raspberry Pi'nizde topladığı tüm verileri görüntülemenizi sağlayan şeydir.
- Sisteme kurulacak son Docker konteyneri Mosquitto broker'dır. Bu broker, HomeAssistant gibi diğer hizmetlerin TeslaMate ile etkileşim kurmasını sağlayan şeydir.
nano compose.yml
6. Bu dosyanın içine, aşağıdaki satırları girmek isteyeceksiniz.
Bu yapılandırma bilgilerini dosyaya girerken, aşağıdaki iki öğeyi değiştirmelisiniz.
-
[REPLACEWITHENCRYPTKEY]– Bu anahtar, Tesla API anahtarlarını Raspberry Pi'nizde dururken şifrelemek için kullanıldığından önemlidir. Bu anahtar için uzun, rastgele bir anahtar belirlediğinizden emin olun. -
[REPLACEWITHDBPASSWORD]– Ardından, PostgreSQL veritabanı için bir şifre belirtmelisiniz. Bu, dosyada üç kez tekrarlanır. Bu veritabanı, TeslaMate'in Raspberry Pi'nizde çalışırken tüm verilerini sakladığı yerdir.services:
teslamate:
image: teslamate/teslamate:latest
restart: always
environment:
- ENCRYPTION_KEY=[REPLACEWITHENCRYPTKEY]
- DATABASE_USER=teslamate
- DATABASE_PASS=[REPLACEWITHDBPASSWORD]
- DATABASE_NAME=teslamate
- DATABASE_HOST=database
- MQTT_HOST=mosquitto
ports:
- 4000:4000
volumes:
- ./import:/opt/app/import
cap_drop:
- alldatabase:
image: postgres:17.3
restart: always
environment:
- POSTGRES_USER=teslamate
- POSTGRES_PASSWORD=[REPLACEWITHDBPASSWORD]
- POSTGRES_DB=teslamate
volumes:
- teslamate-db:/var/lib/postgresql/datagrafana:
image: teslamate/grafana:latest
restart: always
environment:
- DATABASE_USER=teslamate
- DATABASE_PASS=[REPLACEWITHDBPASSWORD]
- DATABASE_NAME=teslamate
- DATABASE_HOST=database
ports:
- 3000:3000
volumes:
- teslamate-grafana-data:/var/lib/grafanamosquitto:
image: eclipse-mosquitto:2
restart: always
command: mosquitto -c /mosquitto-no-auth.conf
# ports:
# - 1883:1883
volumes:
- mosquitto-conf:/mosquitto/config
- mosquitto-data:/mosquitto/datavolumes:
teslamate-db:
teslamate-grafana-data:
mosquitto-conf:
mosquitto-data:
7. Bunu yaptıktan sonra, CTRL + X, ardından Y, sonra ENTER tuşuna basarak kaydedip çıkabilirsiniz.
8. Bu noktada, terminaldeki komutu kullanarak sonunda Raspberry Pi'nizde TeslaMate'i başlatabiliriz.
İlk başlatma sırasında, Docker, TeslaMate konteynerinin en son sürümünü Grafana, Postgres ve Mosquitto gibi diğer yazılımlarla birlikte indirecektir.
docker compose up -d
TeslaMate İçin API'yi Ayarlama
9. TeslaMate'i kullanabilmeniz için, Tesla hesabınızın API anahtarlarını almanız gerekecek.
Bu muhtemelen tüm sürecin en karmaşık kısmıdır, çünkü Tesla bunları kolayca almayı sağlamaz.
Aşağıda, TeslaMate ekibi tarafından önerilen üç seçeneği bulabilirsiniz. Bu araçların sağladığı "Access Token" ve "Refresh Token"a ihtiyacınız olacak.
- Windows/Linux/macOS: Adriankumpf tarafından Tesla Auth
- Android: Denouche Company tarafından Tesla Tokens
- iOS/macOS: Kim Hansen tarafından Auth app for Tesla
10. Şimdi favori web tarayıcınızda aşağıdaki adrese gitmek isteyeceksiniz.
"YOURIPADDRESS" kısmını Raspberry Pi'nizin IP'siyle değiştirdiğinizden emin olun.
http://IPADRESINIZ:4000
11. TeslaMate'in Raspberry Pi'nizde çalışmaya başlayabilmesi için, bazı bilgileri belirtmeniz gerekir.
Öncelikle, "Access Token"ı belirtin (1.). Erişim tokenı, TeslaMate'e API'ye erişim verir.
Ardından, "Refresh Token"a ihtiyacınız var (2.). Bu token, TeslaMate'in gerektiğinde erişim tokenını otomatik olarak güncellemesini sağlar.
Her iki tokene de sahip olduğunuzda, devam etmek için "Sign in" düğmesine tıklamalısınız (3.). TeslaMate, Tesla API'siyle etkileşim kurabilmek için bu tokenlara ihtiyaç duyar.

12. Artık Raspberry Pi'nizde çalışan TeslaMate'e erişiminiz var. Hemen Tesla API üzerinden bilgi alacak ve veritabanına kaydedecektir.
TeslaMate geçmiş verileri alamadığından, veritabanının anlamlı verilerle dolması biraz zaman alacaktır.

Raspberry Pi'de TeslaMate Grafana Gösterge Panelini Görüntüleme
13. Artık Raspberry Pi'nizde TeslaMate çalıştığına göre, Grafana gösterge panellerine erişerek kaydettiği verileri görüntüleyebilirsiniz.
Daha önce fark etmiş olabileceğiniz gibi, Docker compose dosyamıza Grafana'yı da dahil ettik. Aşağıdaki adrese giderek bu web arayüzüne erişebilirsiniz.
"<YOURIPADDRESS>" kısmını Raspberry Pi'nizin IP'siyle değiştirdiğinizden emin olun.
http://<IPADRESINIZ>:3000
14. Grafana'yı ilk açtığınızda, web arayüzüne giriş yapmanız gerekecektir.
Varsayılan kullanıcı adı ve şifre "admin"dir (1.).
Varsayılan kullanıcı adını ve şifreyi girdikten sonra, "Log in" düğmesine tıklayın (2.).

15. Ardından, Grafana için yeni, daha güvenli bir şifre belirlemeniz istenecektir. Sağlanan kutulara yeni bir şifre yazın (1.).
Belirlediğiniz yeni şifreden memnun olduğunuzda, "Submit" düğmesine tıklayın (2.).

16. Artık cihazınızda Grafana açık olduğuna göre, gösterge panellerinin bir listesine göz atabiliriz.
Öncelikle, aşağıdaki ekran görüntüsünde gösterildiği gibi sol kenar çubuğundaki tablo simgesine tıklayın (1.).
Bu bir alt menü getirecektir. Devam etmek için "Browse" düğmesine tıklamanız gerekiyor (2.).

17. Artık Raspberry Pi'nizde kullanabileceğiniz TeslaMate gösterge panellerinin bir listesini görebilirsiniz.
Bu listeyi açmak için, "TeslaMate" başlığına tıklayın (1.).
Ardından, verilerini görüntülemek istediğiniz gösterge panelini bulun ve devam etmek için tıklayın (2.). Örneğimiz için, "Charging Stats" gösterge panelini açacağız.

18. Aşağıda, TeslaMate'in Raspberry Pi'nizde çalışırken topladığı tüm şarj istatistiklerini bulabilirsiniz.
Raspberry Pi'niz çalıştığı ve arabanıza bir bağlantısı olduğu sürece bu veriyi işlemeye devam edecektir.

Sonuç
Bu noktada, umarız artık Raspberry Pi'nizde TeslaMate çalışıyor olacaktır.
TeslaMate, API'sini yoklayarak Tesla'nız hakkında veri toplayan bir veri kaydedicisidir. Bu veriler bir PostgreSQL veritabanında saklanır ve bir Grafana veritabanı üzerinden sunulur.
TeslaMate'i cihazınızda çalıştırırken herhangi bir sorunla karşılaştıysanız, aşağıya yorum bırakın.