compass-card icon indicating copy to clipboard operation
compass-card copied to clipboard

Rotate North. Keep arrow up. Optional secondary arrow.

Open alnavasa opened this issue 3 years ago • 15 comments

Is your feature request related to a problem? Please describe. Used as a compass for a car, boat, or any moving vehicle.

Describe the solution you'd like I would like to have a arrow pointing up, instead of the north, a north rotating, and if possible a second arrow pointing to the wind

Describe alternatives you've considered I have tried to mess with the offset option, but couldn't make it work. Offset only allows values, not sensors, and I am neither sure if this would fix it.

Additional context I have a wind direction sensor, a boat course, and a boat speed sensor, three sensors. I would like to have it behave (Not look) like the two following:

Captura de pantalla 2021-03-09 a las 21 01 55 Captura de pantalla 2021-03-09 a las 21 02 20

Or if possible like this (arrow up, wind arrow, north rotating):

Captura de pantalla 2021-03-09 a las 21 02 35

alnavasa avatar Mar 09 '21 20:03 alnavasa

What an excellent idea! Thanks for taking the time to help make this card even better.

You're right, the N indicator can not be made dynamic with a sensor. I'll add this, and add E, S and W indicators as well.

Multiple arrows are already possible. I'll whip up an example and post it here.

tomvanswam avatar Mar 10 '21 11:03 tomvanswam

A kind of similar thing you ask for is possible, see the bottom right compass-card: image The top right compass card shows the raw wind and heading angles. Only thing that is not possible like this is to show the N as north indicator, that's why I configured it as outward arrow.

To get this you need 2 template sensors, which calculate the north and wind direction angle in relation to your heading.

sensor:
  - platform: template
      calculated_north:
        friendly_name: "Calculated North"
        unit_of_measurement: "°"
        icon_template: "mdi:compass-outline"
        value_template: "{{ 360 - (states('input_number.heading') | float) }}"
      calculated_wind_direction:
        friendly_name: "Calculated Wind Direction"
        unit_of_measurement: "°"
        icon_template: "mdi:compass-outline"
        value_template: "{{ (states('input_number.wind_direction') | float) - (states('input_number.heading') | float) }}"

Use these sensors to populate the compass-card as such:

type: 'custom:compass-card'
indicator_sensors:
  - sensor: sensor.calculated_north
    state_abbreviation:
      show: false
  - sensor: sensor.calculated_wind_direction
    indicator:
      type: inward
  - sensor: input_number.heading
    state_abbreviation:
      show: true
    state_value:
      show: true
    state_units:
      show: true
    indicator:
      show: false

Hope this will do until I get the N indicator also dynamic.

tomvanswam avatar Mar 10 '21 12:03 tomvanswam

TOM! Thanks for considering the feature, I am not in a hurry, so I'll wait until v1.2 Thanks a lot!

alnavasa avatar Mar 10 '21 21:03 alnavasa

In v1.2.0 the background and e/s/w indicators are added. The dynamic N (and the other new ones ofc) will have to wait till v1.3.0

tomvanswam avatar Apr 21 '21 18:04 tomvanswam

Don't worry tom! I'll try it, but looking forward for 1.3.0, I am a fan of your work! Thanks

alnavasa avatar Apr 21 '21 21:04 alnavasa

Hi! Can I take a little of your time? To not make new thread. Can you make offset option more friendly with direction? Now it's looks like picture (my windows facing to south) 12345676

Psytoshgen avatar May 04 '22 09:05 Psytoshgen

Is your feature request related to a problem? Please describe. Used as a compass for a car, boat, or any moving vehicle.

Describe the solution you'd like I would like to have a arrow pointing up, instead of the north, a north rotating, and if possible a second arrow pointing to the wind

Describe alternatives you've considered I have tried to mess with the offset option, but couldn't make it work. Offset only allows values, not sensors, and I am neither sure if this would fix it.

Additional context I have a wind direction sensor, a boat course, and a boat speed sensor, three sensors. I would like to have it behave (Not look) like the two following:

Captura de pantalla 2021-03-09 a las 21 01 55 Captura de pantalla 2021-03-09 a las 21 02 20

Or if possible like this (arrow up, wind arrow, north rotating):

Captura de pantalla 2021-03-09 a las 21 02 35

ah yes, maybe it's easy-to-use flexible horseshoe card integration to make last compas?

Psytoshgen avatar May 04 '22 09:05 Psytoshgen

Hi! Can I take a little of your time? To not make new thread. Can you make offset option more friendly with direction? Now it's looks like picture (my windows facing to south)

Good point! Looks like a lazy implementation from my side ;-)

tomvanswam avatar May 04 '22 19:05 tomvanswam

@tomvanswam, firstly thanks for great work.

Just so I don't go down a rabbit hole someone's been to already, does using a template for a calculated offset to dynamically smoothly rotate the entire circle currently work?

lensherm avatar Jun 23 '22 15:06 lensherm

Unfortunately not het, thanks for asking and reminding me ;-)

tomvanswam avatar Jun 23 '22 15:06 tomvanswam

Heya! Wonder if you ever got to dynamic rotation (for boat heading)

Thanks for your efforts - love your work!

tomerddd avatar May 07 '23 04:05 tomerddd

I'm halfway there, but time is slipping through my fingers lately.

tomvanswam avatar May 16 '23 17:05 tomvanswam

i also look forward to have that nice feature :-)

1

Next9999 avatar May 21 '23 21:05 Next9999

Hello! Sorry for may be stupid question, but how to include second stnsor into the compass? I want wind direction (arrow inward) and sun (when above horizon), with values of wind speed and azimuth, and house outline behind. So far I managed only wind and wind speed. Thank you in advance and for the awesome instrument!

Rust-Shch avatar Jul 29 '23 10:07 Rust-Shch

Hello! Sorry for may be stupid question, but how to include second stnsor into the compass? I want wind direction (arrow inward) and sun (when above horizon), with values of wind speed and azimuth, and house outline behind. So far I managed only wind and wind speed. Thank you in advance and for the awesome instrument!

With a config something like this

type: 'custom:compass-card'
indicator_sensors:
  - sensor: sensor.wind_direction
    indicator:
      type: inward
  - sensor: sensor.sun_angle
    indicator:
      type: circle
value_sensors:
  - sensor: sensor.wind_speed
  - sensor: sensor.wind_sazimuth
compass:
  circle:
    background_image: /local/compass-card/house.png
    background_opacity: 0.5

See example in the readme

tomvanswam avatar Sep 13 '23 18:09 tomvanswam