/home-assistant-MyFisker

Home Assistant component for Fisker Ocean cars

Primary LanguagePythonApache License 2.0Apache-2.0

Fisker Ocean component for Home Assistant

BuyMeCoffee

Currently inactive due to Fisker inc. has shut down API server. If/when this comes back online, the integration will be as well.

Custom component for getting information about your Fisker Ocean presented in Home Assistant.

Features

  • Provides sensors for various part of the vehicle Screenshot_2024-02-24-14-24-11-31_f8348633b3cc54ccc0ae923fa7a5486e Screenshot_2024-02-24-14-24-30-57_f8348633b3cc54ccc0ae923fa7a5486e

Installation and setup

This integration can be installed through HACS.

Alternatively, you can get the custom repository here: https://github.com/MichaelOE/home-assistant-MyFisker

Setup

  • Username: The same as you use in your 'My Fisker'
  • Password: The same as you use in your 'My Fisker'
  • Region: Select your region, used to determine the datacenter URL
  • Alias: Prefix, which is used on all entity names created by the integration

Usage

The integration currently only supports reading of values. It is possible I will add 'commands' to the vehicle in the future.

For showing the vehicle on a map, this can be used:

alias: Fisker Ocean update location
description: ""
trigger:
  - platform: state
    entity_id:
      - sensor.fisker_location_latitude
      - sensor.fisker_location_longitude
condition: []
action:
  - service: device_tracker.see
    metadata: {}
    data:
      dev_id: my_fisker_location
      gps:
        - "{{ states('sensor.fisker_location_latitude') }}"
        - "{{ states('sensor.fisker_location_longitude') }}"
mode: single

I have used apexchart for visualization. In the screenshot above showing remaining range/battery I used the following (note the 'battery-calculation', which is because Fisker API sometimes returns zero miles):

type: custom:apexcharts-card
apex_config:
  chart:
    height: 250px
    toolbar:
      show: true
      tools:
        selection: true
        download: false
        zoom: false
        zoomin: true
        zoomout: true
        pan: true
        reset: true
    zoom:
      enabled: true
header:
  show: true
  title: Rækkevidde
  colorize_states: true
  show_states: true
graph_span: 24h
yaxis:
  - id: range
    min: 0
    max: 700
    apex_config:
      tickAmount: 10
  - id: battery
    opposite: true
    min: 0
    max: 100
    apex_config:
      tickAmount: 10
series:
  - entity: sensor.fisker_battery_max_miles
    transform: 'return x == 0 ? null : x;'
    extend_to: false
    yaxis_id: range
    fill_raw: last
    stroke_width: 2
  - entity: sensor.fisker_battery_percent
    yaxis_id: battery
    fill_raw: last
    stroke_width: 2

Known issues

  • Currently only supports one vehicle per account
  • Battery range sometimes reported as 0 (zero) from the Fisker API
  • Battery / range is reported without decimals, making trip stats unprecise at shorter trips