Compare commits

...

4 commits
v_2.4 ... main

Author SHA1 Message Date
f19730ff1d Fix: Secondary sensor display - Wh/EUR precision
- Separate Wh from W in getSecondaryVal: Wh values >= 1000
  now display as kWh (e.g., 794 Wh -> 0.79 kWh)
- EUR/ct/€ units now show 2 decimal places (0.28 EUR/kWh
  instead of 0.3)
- W values continue using _formatPower() as before

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 10:27:27 +01:00
jayjojayson
1031af5b3d
v_2.4 2026-03-04 13:04:31 +01:00
jayjojayson
97fd58f671
v_2.4 2026-03-04 01:24:16 +01:00
jayjojayson
2dc24eca1b v_2.4 2026-03-04 01:05:14 +01:00
5 changed files with 14 additions and 25 deletions

1
.github/FUNDING.yml vendored
View file

@ -1,2 +1,3 @@
---
ko_fi: jayjojayson
custom: ["https://www.paypal.me/quadFlyerFW"]

View file

@ -133,7 +133,7 @@ entities:
battery_soc: sensor.battery_soc
card_mod:
style: |
power-flux-card {
:host {
{% if states('sensor.solar_power') | float > 0 %}
--icon-solar-color: #00ff88;
{% else %}
@ -153,7 +153,7 @@ entities:
battery_soc: sensor.battery_soc
card_mod:
style: |
power-flux-card {
:host {
{% if states('sensor.grid_power_combined') | float < 0 %}
--text-grid-color: #ff3333;
{% else %}
@ -173,7 +173,7 @@ entities:
battery_soc: sensor.battery_soc
card_mod:
style: |
power-flux-card {
:host {
{% set soc = states('sensor.battery_soc') | float %}
{% if soc > 80 %}
--neon-green: #00ff88;
@ -197,7 +197,7 @@ entities:
consumer_1: sensor.wallbox_power
card_mod:
style: |
power-flux-card {
:host {
{% if states('sensor.wallbox_power') | float > 500 %}
--pipe-consumer-1-color: #a855f7;
--icon-consumer-1-color: #a855f7;
@ -220,7 +220,7 @@ entities:
consumer_1: sensor.wallbox_power
card_mod:
style: |
power-flux-card {
:host {
{% if states('sensor.solar_power') | float == 0 %}
--icon-solar-color: #555555;
--text-solar-color: #777777;

View file

@ -1820,13 +1820,7 @@ console.log(
const val = parseFloat(state.state);
if (isNaN(val)) return state.state + (state.attributes.unit_of_measurement ? ' ' + state.attributes.unit_of_measurement : '');
const unit = state.attributes.unit_of_measurement || '';
if (unit === 'W' || unit === 'Wh') {
return this._formatPower(val);
}
if (unit === 'kWh' || unit === 'kW') {
return val.toFixed(1) + ' ' + unit;
}
return val.toFixed(1) + (unit ? ' ' + unit : '');
if (unit === 'W') { return this._formatPower(val); } if (unit === 'Wh') { if (Math.abs(val) >= 1000) return (val / 1000).toFixed(2) + ' kWh'; return Math.round(val) + ' Wh'; } if (unit === 'kWh' || unit === 'kW') { return val.toFixed(1) + ' ' + unit; } if (unit.includes('EUR') || unit.includes('ct') || unit.includes('€')) { return val.toFixed(2) + ' ' + unit; } return val.toFixed(1) + (unit ? ' ' + unit : '');
};
// Determine existence of main entities

View file

@ -135,7 +135,7 @@ entities:
battery_soc: sensor.battery_soc
card_mod:
style: |
power-flux-card {
:host {
{% if states('sensor.solar_power') | float > 0 %}
--icon-solar-color: #00ff88;
{% else %}
@ -155,7 +155,7 @@ entities:
battery_soc: sensor.battery_soc
card_mod:
style: |
power-flux-card {
:host {
{% if states('sensor.grid_power_combined') | float < 0 %}
--text-grid-color: #ff3333;
{% else %}
@ -175,7 +175,7 @@ entities:
battery_soc: sensor.battery_soc
card_mod:
style: |
power-flux-card {
:host {
{% set soc = states('sensor.battery_soc') | float %}
{% if soc > 80 %}
--neon-green: #00ff88;
@ -199,7 +199,7 @@ entities:
consumer_1: sensor.wallbox_power
card_mod:
style: |
power-flux-card {
:host {
{% if states('sensor.wallbox_power') | float > 500 %}
--pipe-consumer-1-color: #a855f7;
--icon-consumer-1-color: #a855f7;
@ -222,7 +222,7 @@ entities:
consumer_1: sensor.wallbox_power
card_mod:
style: |
power-flux-card {
:host {
{% if states('sensor.solar_power') | float == 0 %}
--icon-solar-color: #555555;
--text-solar-color: #777777;

View file

@ -820,13 +820,7 @@ console.log(
const val = parseFloat(state.state);
if (isNaN(val)) return state.state + (state.attributes.unit_of_measurement ? ' ' + state.attributes.unit_of_measurement : '');
const unit = state.attributes.unit_of_measurement || '';
if (unit === 'W' || unit === 'Wh') {
return this._formatPower(val);
}
if (unit === 'kWh' || unit === 'kW') {
return val.toFixed(1) + ' ' + unit;
}
return val.toFixed(1) + (unit ? ' ' + unit : '');
if (unit === 'W') { return this._formatPower(val); } if (unit === 'Wh') { if (Math.abs(val) >= 1000) return (val / 1000).toFixed(2) + ' kWh'; return Math.round(val) + ' Wh'; } if (unit === 'kWh' || unit === 'kW') { return val.toFixed(1) + ' ' + unit; } if (unit.includes('EUR') || unit.includes('ct') || unit.includes('€')) { return val.toFixed(2) + ' ' + unit; } return val.toFixed(1) + (unit ? ' ' + unit : '');
};
// Determine existence of main entities