Skip to main content

CMQTT Client that publishes data from Volkswagen WeConnect

Project description

WeConnect-MQTT

GitHub sourcecode GitHub release (latest by date) GitHub GitHub issues PyPI - Downloads PyPI - Python Version Docker Image Size (latest semver) Docker Pulls Donate at PayPal Sponsor at Github

MQTT Client that publishes data from Volkswagen WeConnect Services

What is the purpose?

If you want to integrate data from your weconnect enabled car a standard protocol such as MQTT can be very helpful. This Client enables you to integrate with the MQTT Broker of your choice (e.g. your home automation solution such as ioBroker, FHEM or Home Assistant)

Requirements

You need to install python 3 on your system: How to install python

Login & Consent

WeConnect-mqtt is based on the new WeConnect ID API that was introduced with the new series of ID cars. If you use another car or hybrid you probably need to agree to the terms and conditions of the WeConnect ID interface. Easiest to do so is by installing the WeConnect ID app on your smartphone and login there. If necessary you will be asked to agree to the terms and conditions.

How to install

If you want to use WeConnect-mqtt, the easiest way is to obtain it from PyPI. Just install instead using:

pip3 install weconnect-mqtt

Updates

If you want to update WeConnect-mqtt, the easiest way is:

pip3 install weconnect-mqtt --upgrade

Docker

There is also a Docker image to easily host WeConnect-MQTT: See on Dockerhub

How to use

Start weconnect-mqtt from the commandline:

weconnect-mqtt

You get all the usage information by using the --help command

weconnect-mqtt --help

An example to connect with an MQTT broker at 192.168.0.1 with user test and password test123 is

weconnect-mqtt --username test@test.de --password test123 --mqttbroker 192.168.0.1 --mqtt-username test --mqtt-password test123 --prefix weconnect

The client uses user test@test.de and password test123 in this example to connect to weconnect

Credentials

If you do not want to provide your username or password all the time you have to create a ".netrc" file at the appropriate location (usually this is your home folder):

# For WeConnect
machine volkswagen.de
login test@test.de
password testpassword123

# For the MQTTBroker
machine 192.168.0.1
login test
password testpassword123

You can also provide the location of the netrc file using the --netrc option

Charging stations

You can also obtain data from charging stations by adding a location with e.g. --chargingLocation 52.437132 10.796628 and a radius in meters with --chargingLocationRadius=500. Data for charging stations is mostly static, but you can see the current availability.

Disabling features

You can disable data for the cars capabilities with --no-capabilities

ASCII Art vehicle images

You can enable ASCII Art pictures of the cars with --pictures

Tested with

  • Volkswagen ID.3 Modelyear 2021
  • Volkswagen Passat GTE Modelyear 2021

Reporting Issues

Please feel free to open an issue at GitHub Issue page to report problems you found.

Known Issues

  • The Tool is in alpha state and may change unexpectedly at any time!

Related Projects:

  • WeConnect-cli: Commandline Interface to interact with the Volkswagen WeConnect Services
  • WeConnect-python: Python API to connect to Volkswagen WeConnect Services

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for weconnect-mqtt, version 0.16.1
Filename, size File type Python version Upload date Hashes
Filename, size weconnect_mqtt-0.16.1-py3-none-any.whl (10.7 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size weconnect-mqtt-0.16.1.tar.gz (13.1 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page