Add maxdailygust, indoor feelsLike/dewPoint, and Ambient rain accumulators
- Max Gust Today tile (maxdailygust from Ambient) - Feels Like In tile (feelsLikein, Ambient-computed) - Use Ambient's dewPointin directly instead of computing from tempinf/humidityin - Event Rain tile (eventrainin, shows only when > 0) - Total Rain lifetime tile (totalrainin) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
1 parent
a535721bf8
commit
c5cdd39eb3
1 file changed
+24
-5
@@ -172,6 +172,7 @@ a { color: var(--cool); text-decoration: none; }
|
|||||||
<div class="stat"><div class="stat-label">Dew Point</div><div class="stat-val" id="sDew">—<span class="stat-trend" id="trDew"></span></div><div class="stat-unit">°F</div></div>
|
<div class="stat"><div class="stat-label">Dew Point</div><div class="stat-val" id="sDew">—<span class="stat-trend" id="trDew"></span></div><div class="stat-unit">°F</div></div>
|
||||||
<div class="stat"><div class="stat-label">Wind</div><div class="stat-val" id="sWind">—<span class="stat-trend" id="trWind"></span></div><div class="stat-unit">mph</div></div>
|
<div class="stat"><div class="stat-label">Wind</div><div class="stat-val" id="sWind">—<span class="stat-trend" id="trWind"></span></div><div class="stat-unit">mph</div></div>
|
||||||
<div class="stat"><div class="stat-label">Wind Gust</div><div class="stat-val" id="sGust">—</div><div class="stat-unit">mph</div></div>
|
<div class="stat"><div class="stat-label">Wind Gust</div><div class="stat-val" id="sGust">—</div><div class="stat-unit">mph</div></div>
|
||||||
|
<div class="stat"><div class="stat-label">Max Gust Today</div><div class="stat-val" id="sMaxGust">—</div><div class="stat-unit">mph</div></div>
|
||||||
<div class="stat">
|
<div class="stat">
|
||||||
<div class="stat-label">Pressure</div>
|
<div class="stat-label">Pressure</div>
|
||||||
<div class="stat-val" id="sPres">—<span class="stat-trend" id="trPres"></span></div>
|
<div class="stat-val" id="sPres">—<span class="stat-trend" id="trPres"></span></div>
|
||||||
@@ -183,6 +184,7 @@ a { color: var(--cool); text-decoration: none; }
|
|||||||
<div class="stat"><div class="stat-label">Solar Rad.</div><div class="stat-val" id="sSolar">—<span class="stat-trend" id="trSolar"></span></div><div class="stat-unit">W/m²</div></div>
|
<div class="stat"><div class="stat-label">Solar Rad.</div><div class="stat-val" id="sSolar">—<span class="stat-trend" id="trSolar"></span></div><div class="stat-unit">W/m²</div></div>
|
||||||
<div class="stat"><div class="stat-label">Battery</div><div class="stat-val" id="sBatt">—</div><div class="stat-unit"></div></div>
|
<div class="stat"><div class="stat-label">Battery</div><div class="stat-val" id="sBatt">—</div><div class="stat-unit"></div></div>
|
||||||
<div class="stat" id="indoorTempTile" style="display:none"><div class="stat-label">Temp In</div><div class="stat-val" id="sTempIn">—</div><div class="stat-unit">°F</div></div>
|
<div class="stat" id="indoorTempTile" style="display:none"><div class="stat-label">Temp In</div><div class="stat-val" id="sTempIn">—</div><div class="stat-unit">°F</div></div>
|
||||||
|
<div class="stat" id="indoorFeelsTile" style="display:none"><div class="stat-label">Feels Like In</div><div class="stat-val" id="sFeelsIn">—</div><div class="stat-unit">°F</div></div>
|
||||||
<div class="stat" id="indoorHumTile" style="display:none"><div class="stat-label">Humidity In</div><div class="stat-val" id="sHumIn">—</div><div class="stat-unit">%</div></div>
|
<div class="stat" id="indoorHumTile" style="display:none"><div class="stat-label">Humidity In</div><div class="stat-val" id="sHumIn">—</div><div class="stat-unit">%</div></div>
|
||||||
<div class="stat" id="indoorDewTile" style="display:none"><div class="stat-label">Dew Point In</div><div class="stat-val" id="sDewIn">—</div><div class="stat-unit">°F</div></div>
|
<div class="stat" id="indoorDewTile" style="display:none"><div class="stat-label">Dew Point In</div><div class="stat-val" id="sDewIn">—</div><div class="stat-unit">°F</div></div>
|
||||||
</div>
|
</div>
|
||||||
@@ -192,6 +194,8 @@ a { color: var(--cool); text-decoration: none; }
|
|||||||
<div class="stat"><div class="stat-label">Rain 7d</div><div class="stat-val" id="sRain7d">—</div><div class="stat-unit">in</div></div>
|
<div class="stat"><div class="stat-label">Rain 7d</div><div class="stat-val" id="sRain7d">—</div><div class="stat-unit">in</div></div>
|
||||||
<div class="stat"><div class="stat-label">Rain 30d</div><div class="stat-val" id="sRain30d">—</div><div class="stat-unit">in</div></div>
|
<div class="stat"><div class="stat-label">Rain 30d</div><div class="stat-val" id="sRain30d">—</div><div class="stat-unit">in</div></div>
|
||||||
<div class="stat"><div class="stat-label">Rain YTD</div><div class="stat-val" id="sRainYTD">—</div><div class="stat-unit">in</div></div>
|
<div class="stat"><div class="stat-label">Rain YTD</div><div class="stat-val" id="sRainYTD">—</div><div class="stat-unit">in</div></div>
|
||||||
|
<div class="stat" id="sEventRainTile" style="display:none"><div class="stat-label">Event Rain</div><div class="stat-val" id="sEventRain">—</div><div class="stat-unit">in</div></div>
|
||||||
|
<div class="stat" id="sTotalRainTile" style="display:none"><div class="stat-label">Total Rain</div><div class="stat-val" id="sTotalRain">—</div><div class="stat-unit">in (lifetime)</div></div>
|
||||||
<div class="stat"><div class="stat-label">Heating DD</div><div class="stat-val" id="sHDD">—</div><div class="stat-unit">this month</div></div>
|
<div class="stat"><div class="stat-label">Heating DD</div><div class="stat-val" id="sHDD">—</div><div class="stat-unit">this month</div></div>
|
||||||
<div class="stat"><div class="stat-label">Cooling DD</div><div class="stat-val" id="sCDD">—</div><div class="stat-unit">this month</div></div>
|
<div class="stat"><div class="stat-label">Cooling DD</div><div class="stat-val" id="sCDD">—</div><div class="stat-unit">this month</div></div>
|
||||||
<div class="stat" id="sStreakTile" style="display:none">
|
<div class="stat" id="sStreakTile" style="display:none">
|
||||||
@@ -732,22 +736,37 @@ async function updateLatest() {
|
|||||||
set('sSolar', d.solarradiation, 0);
|
set('sSolar', d.solarradiation, 0);
|
||||||
set('sBatt', d.battout != null ? (d.battout === 1 ? 'OK' : 'Low') : '—', 0);
|
set('sBatt', d.battout != null ? (d.battout === 1 ? 'OK' : 'Low') : '—', 0);
|
||||||
|
|
||||||
|
// Max daily gust
|
||||||
|
if (d.maxdailygust != null) set('sMaxGust', d.maxdailygust);
|
||||||
|
|
||||||
|
// Indoor sensors
|
||||||
if (d.tempinf != null) {
|
if (d.tempinf != null) {
|
||||||
set('sTempIn', d.tempinf);
|
set('sTempIn', d.tempinf);
|
||||||
document.getElementById('indoorTempTile').style.display = '';
|
document.getElementById('indoorTempTile').style.display = '';
|
||||||
}
|
}
|
||||||
|
if (d.feelsLikein != null) {
|
||||||
|
set('sFeelsIn', d.feelsLikein, 0);
|
||||||
|
document.getElementById('indoorFeelsTile').style.display = '';
|
||||||
|
}
|
||||||
if (d.humidityin != null) {
|
if (d.humidityin != null) {
|
||||||
set('sHumIn', d.humidityin, 0);
|
set('sHumIn', d.humidityin, 0);
|
||||||
document.getElementById('indoorHumTile').style.display = '';
|
document.getElementById('indoorHumTile').style.display = '';
|
||||||
}
|
}
|
||||||
if (d.tempinf != null && d.humidityin != null) {
|
if (d.dewPointin != null) {
|
||||||
const Tc = (d.tempinf - 32) * 5 / 9, RH = d.humidityin;
|
set('sDewIn', d.dewPointin);
|
||||||
const dp = (243.04 * (Math.log(RH / 100) + 17.625 * Tc / (243.04 + Tc))) /
|
|
||||||
(17.625 - Math.log(RH / 100) - 17.625 * Tc / (243.04 + Tc));
|
|
||||||
set('sDewIn', +(dp * 9 / 5 + 32).toFixed(1), 1);
|
|
||||||
document.getElementById('indoorDewTile').style.display = '';
|
document.getElementById('indoorDewTile').style.display = '';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Ambient rain accumulators
|
||||||
|
if (d.eventrainin != null && d.eventrainin > 0) {
|
||||||
|
set('sEventRain', d.eventrainin, 2);
|
||||||
|
document.getElementById('sEventRainTile').style.display = '';
|
||||||
|
}
|
||||||
|
if (d.totalrainin != null) {
|
||||||
|
set('sTotalRain', d.totalrainin, 2);
|
||||||
|
document.getElementById('sTotalRainTile').style.display = '';
|
||||||
|
}
|
||||||
|
|
||||||
const name = document.getElementById('stationName');
|
const name = document.getElementById('stationName');
|
||||||
if (name && d.PASSKEY) name.textContent = '';
|
if (name && d.PASSKEY) name.textContent = '';
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user