From a782c48079bed2f44fb12f5a63c83c6fecb32e0f Mon Sep 17 00:00:00 2001 From: Carsten Schmiemann Date: Mon, 23 May 2022 22:42:51 +0200 Subject: [PATCH] Set important metrics while streaming for server v3 --- .../ovms_server_v3/src/ovms_server_v3.cpp | 22 ++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/OVMS.V3/components/ovms_server_v3/src/ovms_server_v3.cpp b/OVMS.V3/components/ovms_server_v3/src/ovms_server_v3.cpp index fd65699..3b09ede 100644 --- a/OVMS.V3/components/ovms_server_v3/src/ovms_server_v3.cpp +++ b/OVMS.V3/components/ovms_server_v3/src/ovms_server_v3.cpp @@ -756,7 +756,27 @@ void OvmsServerV3::MetricModified(OvmsMetric* metric) OvmsMutexLock mg(&m_mgconn_mutex); if (!m_mgconn) return; - metric->ClearModified(MyOvmsServerV3Modifier); + //metric->ClearModified(MyOvmsServerV3Modifier); + + //Set important metrics to modified and clear, to transmit them while streaming + StandardMetrics.ms_v_pos_latitude->IsModifiedAndClear(MyOvmsServerV3Modifier); + StandardMetrics.ms_v_pos_longitude->IsModifiedAndClear(MyOvmsServerV3Modifier); + StandardMetrics.ms_v_pos_direction->IsModifiedAndClear(MyOvmsServerV3Modifier); + StandardMetrics.ms_v_pos_altitude->IsModifiedAndClear(MyOvmsServerV3Modifier); + StandardMetrics.ms_v_pos_gpslock->IsModifiedAndClear(MyOvmsServerV3Modifier); + StandardMetrics.ms_v_pos_gpssq->IsModifiedAndClear(MyOvmsServerV3Modifier); + StandardMetrics.ms_v_pos_gpsmode->IsModifiedAndClear(MyOvmsServerV3Modifier); + StandardMetrics.ms_v_pos_gpshdop->IsModifiedAndClear(MyOvmsServerV3Modifier); + StandardMetrics.ms_v_pos_satcount->IsModifiedAndClear(MyOvmsServerV3Modifier); + StandardMetrics.ms_v_pos_gpsspeed->IsModifiedAndClear(MyOvmsServerV3Modifier); + StandardMetrics.ms_v_pos_speed->IsModifiedAndClear(MyOvmsServerV3Modifier); + StandardMetrics.ms_v_env_drivemode->IsModifiedAndClear(MyOvmsServerV3Modifier); + StandardMetrics.ms_v_bat_power->IsModifiedAndClear(MyOvmsServerV3Modifier); + StandardMetrics.ms_v_bat_energy_used->IsModifiedAndClear(MyOvmsServerV3Modifier); + StandardMetrics.ms_v_bat_energy_recd->IsModifiedAndClear(MyOvmsServerV3Modifier); + StandardMetrics.ms_v_inv_power->IsModifiedAndClear(MyOvmsServerV3Modifier); + StandardMetrics.ms_v_inv_efficiency->IsModifiedAndClear(MyOvmsServerV3Modifier); + TransmitMetric(metric); m_lasttx_stream = now; }