Compare commits
2 commits
dec6c220d5
...
8f285cc917
Author | SHA1 | Date | |
---|---|---|---|
8f285cc917 | |||
894a063083 |
23 changed files with 151 additions and 146 deletions
|
@ -752,6 +752,8 @@ void OvmsLocations::UpdatedVehicleOn(OvmsMetric* metric)
|
|||
|
||||
void OvmsLocations::UpdateParkPosition()
|
||||
{
|
||||
OvmsRecMutexLock lock(&m_park_lock);
|
||||
|
||||
bool caron = StdMetrics.ms_v_env_on->AsBool();
|
||||
if (caron)
|
||||
{
|
||||
|
@ -843,6 +845,8 @@ void OvmsLocations::CheckTheft()
|
|||
{
|
||||
static int last_dist = 0;
|
||||
|
||||
OvmsRecMutexLock lock(&m_park_lock);
|
||||
|
||||
if ((m_park_latitude == 0) && (m_park_longitude == 0)) return;
|
||||
if (StandardMetrics.ms_v_env_on->AsBool()) return;
|
||||
|
||||
|
|
|
@ -104,6 +104,7 @@ class OvmsLocations
|
|||
float m_park_longitude;
|
||||
float m_park_distance;
|
||||
bool m_park_invalid;
|
||||
OvmsRecMutex m_park_lock;
|
||||
uint32_t m_last_alarm;
|
||||
LocationMap m_locations;
|
||||
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
# please read the ESP-IDF documents if you need to do this.
|
||||
#
|
||||
|
||||
ifdef CONFIG_OVMS_VEHICLE_RENAULTZOE_PH2
|
||||
ifdef CONFIG_OVMS_VEHICLE_RENAULTZOE_PH2_OBD
|
||||
COMPONENT_ADD_INCLUDEDIRS:=src
|
||||
COMPONENT_SRCDIRS:=src
|
||||
COMPONENT_ADD_LDFLAGS = -Wl,--whole-archive -l$(COMPONENT_NAME) -Wl,--no-whole-archive
|
|
@ -1,8 +1,8 @@
|
|||
=======================
|
||||
Renault Zoe Phase 2
|
||||
Renault Zoe Phase 2 (OBD port)
|
||||
=======================
|
||||
|
||||
Vehicle Type: **RZ2**
|
||||
Vehicle Type: **RZ2O**
|
||||
|
||||
This vehicle type supports the Renault Zoe(PH2) through OBD connection.
|
||||
All values are read-only, no control possible because of CAN Gateway.
|
|
@ -23,9 +23,9 @@
|
|||
; THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#include "vehicle_renaultzoe_ph2.h"
|
||||
#include "vehicle_renaultzoe_ph2_obd.h"
|
||||
|
||||
void OvmsVehicleRenaultZoePh2::IncomingBCM(uint16_t type, uint16_t pid, const char* data, uint16_t len) {
|
||||
void OvmsVehicleRenaultZoePh2OBD::IncomingBCM(uint16_t type, uint16_t pid, const char* data, uint16_t len) {
|
||||
switch (pid) {
|
||||
case 0x6300: { // TPMS pressure - front left
|
||||
if ((CAN_UINT(0) * 7.5) < 7672) {
|
|
@ -23,9 +23,9 @@
|
|||
; THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#include "vehicle_renaultzoe_ph2.h"
|
||||
#include "vehicle_renaultzoe_ph2_obd.h"
|
||||
|
||||
void OvmsVehicleRenaultZoePh2::IncomingEVC(uint16_t type, uint16_t pid, const char* data, uint16_t len) {
|
||||
void OvmsVehicleRenaultZoePh2OBD::IncomingEVC(uint16_t type, uint16_t pid, const char* data, uint16_t len) {
|
||||
switch (pid) {
|
||||
case 0x2006: { //Odometer (Total Vehicle Distance)
|
||||
StandardMetrics.ms_v_pos_odometer->SetValue((float) CAN_UINT24(0), Kilometers);
|
|
@ -22,9 +22,9 @@
|
|||
; OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
; THE SOFTWARE.
|
||||
*/
|
||||
#include "vehicle_renaultzoe_ph2.h"
|
||||
#include "vehicle_renaultzoe_ph2_obd.h"
|
||||
|
||||
void OvmsVehicleRenaultZoePh2::IncomingHVAC(uint16_t type, uint16_t pid, const char* data, uint16_t len) {
|
||||
void OvmsVehicleRenaultZoePh2OBD::IncomingHVAC(uint16_t type, uint16_t pid, const char* data, uint16_t len) {
|
||||
switch (pid) {
|
||||
case 0x4009: { //Cabin temperature
|
||||
StandardMetrics.ms_v_env_cabintemp->SetValue(float((CAN_UINT(0) - 400) / 10), Celcius);
|
|
@ -23,9 +23,9 @@
|
|||
; THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#include "vehicle_renaultzoe_ph2.h"
|
||||
#include "vehicle_renaultzoe_ph2_obd.h"
|
||||
|
||||
void OvmsVehicleRenaultZoePh2::IncomingINV(uint16_t type, uint16_t pid, const char* data, uint16_t len) {
|
||||
void OvmsVehicleRenaultZoePh2OBD::IncomingINV(uint16_t type, uint16_t pid, const char* data, uint16_t len) {
|
||||
switch (pid) {
|
||||
case 0x700C: { // Inverter temperature
|
||||
StandardMetrics.ms_v_inv_temp->SetValue(float((CAN_UINT24(0) * 0.001953125) - 40), Celcius);
|
|
@ -23,9 +23,9 @@
|
|||
; THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#include "vehicle_renaultzoe_ph2.h"
|
||||
#include "vehicle_renaultzoe_ph2_obd.h"
|
||||
|
||||
void OvmsVehicleRenaultZoePh2::IncomingLBC(uint16_t type, uint16_t pid, const char* data, uint16_t len) {
|
||||
void OvmsVehicleRenaultZoePh2OBD::IncomingLBC(uint16_t type, uint16_t pid, const char* data, uint16_t len) {
|
||||
switch (pid) {
|
||||
case 0x9005: { //Battery voltage
|
||||
StandardMetrics.ms_v_bat_voltage->SetValue((float) (CAN_UINT(0) * 0.1), Volts);
|
|
@ -24,9 +24,9 @@
|
|||
*/
|
||||
|
||||
/*
|
||||
#include "vehicle_renaultzoe_ph2.h"
|
||||
#include "vehicle_renaultzoe_ph2_obd.h"
|
||||
|
||||
void OvmsVehicleRenaultZoePh2::IncomingCLUSTER(uint16_t type, uint16_t pid, const char* data, uint16_t len) {
|
||||
void OvmsVehicleRenaultZoePh2OBD::IncomingCLUSTER(uint16_t type, uint16_t pid, const char* data, uint16_t len) {
|
||||
switch (pid) {
|
||||
case 0x2101: { // Cluster - trip counter
|
||||
mt_pos_car_trip->SetValue(CAN_UINT32(0), Kilometers);
|
|
@ -22,9 +22,9 @@
|
|||
; OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
; THE SOFTWARE.
|
||||
*/
|
||||
#include "vehicle_renaultzoe_ph2.h"
|
||||
#include "vehicle_renaultzoe_ph2_obd.h"
|
||||
|
||||
void OvmsVehicleRenaultZoePh2::IncomingUCM(uint16_t type, uint16_t pid, const char* data, uint16_t len) {
|
||||
void OvmsVehicleRenaultZoePh2OBD::IncomingUCM(uint16_t type, uint16_t pid, const char* data, uint16_t len) {
|
||||
switch (pid) {
|
||||
case 0x6079: { //12V Battery Current
|
||||
StandardMetrics.ms_v_charge_12v_current->SetValue((float) (CAN_UINT(0) * 0.1), Amps);
|
|
@ -36,14 +36,14 @@
|
|||
#include "ovms_notify.h"
|
||||
#include "ovms_webserver.h"
|
||||
|
||||
#include "vehicle_renaultzoe_ph2.h"
|
||||
#include "vehicle_renaultzoe_ph2_obd.h"
|
||||
|
||||
using namespace std;
|
||||
|
||||
#define _attr(text) (c.encode_html(text).c_str())
|
||||
#define _html(text) (c.encode_html(text).c_str())
|
||||
|
||||
void OvmsVehicleRenaultZoePh2::WebCfgCommon(PageEntry_t& p, PageContext_t& c)
|
||||
void OvmsVehicleRenaultZoePh2OBD::WebCfgCommon(PageEntry_t& p, PageContext_t& c)
|
||||
{
|
||||
std::string error, rangeideal, battcapacity;
|
||||
bool UseBMScalculation, UseBMSsoc;
|
||||
|
@ -62,11 +62,11 @@ void OvmsVehicleRenaultZoePh2::WebCfgCommon(PageEntry_t& p, PageContext_t& c)
|
|||
}
|
||||
if (error == "") {
|
||||
// store:
|
||||
MyConfig.SetParamValue("xrz2", "rangeideal", rangeideal);
|
||||
MyConfig.SetParamValue("xrz2", "battcapacity", battcapacity);
|
||||
//MyConfig.SetParamValueBool("xrz2", "UseCarTrip", UseCarTrip);
|
||||
MyConfig.SetParamValueBool("xrz2", "UseBMScalculation", UseBMScalculation);
|
||||
MyConfig.SetParamValueBool("xrz2", "UseBMSsoc", UseBMSsoc);
|
||||
MyConfig.SetParamValue("xrz2o", "rangeideal", rangeideal);
|
||||
MyConfig.SetParamValue("xrz2o", "battcapacity", battcapacity);
|
||||
//MyConfig.SetParamValueBool("xrz2o", "UseCarTrip", UseCarTrip);
|
||||
MyConfig.SetParamValueBool("xrz2o", "UseBMScalculation", UseBMScalculation);
|
||||
MyConfig.SetParamValueBool("xrz2o", "UseBMSsoc", UseBMSsoc);
|
||||
|
||||
c.head(200);
|
||||
c.alert("success", "<p class=\"lead\">Renault Zoe Ph2 battery setup saved.</p>");
|
||||
|
@ -81,11 +81,11 @@ void OvmsVehicleRenaultZoePh2::WebCfgCommon(PageEntry_t& p, PageContext_t& c)
|
|||
}
|
||||
else {
|
||||
// read configuration:
|
||||
rangeideal = MyConfig.GetParamValue("xrz2", "rangeideal", "350");
|
||||
battcapacity = MyConfig.GetParamValue("xrz2", "battcapacity", "52000");
|
||||
//UseCarTrip = MyConfig.GetParamValueBool("xrz2", "UseCarTrip", false);
|
||||
UseBMScalculation = MyConfig.GetParamValueBool("xrz2", "UseBMScalculation", false);
|
||||
UseBMSsoc = MyConfig.GetParamValueBool("xrz2", "UseBMSsoc", false);
|
||||
rangeideal = MyConfig.GetParamValue("xrz2o", "rangeideal", "350");
|
||||
battcapacity = MyConfig.GetParamValue("xrz2o", "battcapacity", "52000");
|
||||
//UseCarTrip = MyConfig.GetParamValueBool("xrz2o", "UseCarTrip", false);
|
||||
UseBMScalculation = MyConfig.GetParamValueBool("xrz2o", "UseBMScalculation", false);
|
||||
UseBMSsoc = MyConfig.GetParamValueBool("xrz2o", "UseBMSsoc", false);
|
||||
c.head(200);
|
||||
}
|
||||
|
||||
|
@ -135,19 +135,19 @@ void OvmsVehicleRenaultZoePh2::WebCfgCommon(PageEntry_t& p, PageContext_t& c)
|
|||
/**
|
||||
* WebInit: register pages
|
||||
*/
|
||||
void OvmsVehicleRenaultZoePh2::WebInit()
|
||||
void OvmsVehicleRenaultZoePh2OBD::WebInit()
|
||||
{
|
||||
MyWebServer.RegisterPage("/xrz2/battmon", "BMS View", OvmsWebServer::HandleBmsCellMonitor, PageMenu_Vehicle, PageAuth_Cookie);
|
||||
MyWebServer.RegisterPage("/xrz2/settings", "Setup", WebCfgCommon, PageMenu_Vehicle, PageAuth_Cookie);
|
||||
MyWebServer.RegisterPage("/xrz2o/battmon", "BMS View", OvmsWebServer::HandleBmsCellMonitor, PageMenu_Vehicle, PageAuth_Cookie);
|
||||
MyWebServer.RegisterPage("/xrz2o/settings", "Setup", WebCfgCommon, PageMenu_Vehicle, PageAuth_Cookie);
|
||||
}
|
||||
|
||||
/**
|
||||
* WebDeInit: deregister pages
|
||||
*/
|
||||
void OvmsVehicleRenaultZoePh2::WebDeInit()
|
||||
void OvmsVehicleRenaultZoePh2OBD::WebDeInit()
|
||||
{
|
||||
MyWebServer.DeregisterPage("/xrz2/battmon");
|
||||
MyWebServer.DeregisterPage("/xrz2/battery");
|
||||
MyWebServer.DeregisterPage("/xrz2o/battmon");
|
||||
MyWebServer.DeregisterPage("/xrz2o/battery");
|
||||
}
|
||||
|
||||
|
|
@ -39,11 +39,11 @@
|
|||
#include "ovms_peripherals.h"
|
||||
#include "ovms_netmanager.h"
|
||||
|
||||
#include "vehicle_renaultzoe_ph2.h"
|
||||
#include "vehicle_renaultzoe_ph2_obd.h"
|
||||
#include "ph2_poller.h"
|
||||
|
||||
OvmsVehicleRenaultZoePh2::OvmsVehicleRenaultZoePh2() {
|
||||
ESP_LOGI(TAG, "Start Renault Zoe Ph2 vehicle module");
|
||||
OvmsVehicleRenaultZoePh2OBD::OvmsVehicleRenaultZoePh2OBD() {
|
||||
ESP_LOGI(TAG, "Start Renault Zoe Ph2 (OBD) vehicle module");
|
||||
|
||||
//Init variables supressing push on boot up
|
||||
StandardMetrics.ms_v_type->SetValue("RZ2");
|
||||
|
@ -53,7 +53,7 @@ OvmsVehicleRenaultZoePh2::OvmsVehicleRenaultZoePh2() {
|
|||
StandardMetrics.ms_v_charge_substate->SetValue("stopped");
|
||||
StandardMetrics.ms_v_env_on->SetValue(false);
|
||||
|
||||
MyConfig.RegisterParam("xrz2", "Renault Zoe Ph2 configuration", true, true);
|
||||
MyConfig.RegisterParam("xrz2o", "Renault Zoe Ph2 (OBD) configuration", true, true);
|
||||
ConfigChanged(NULL);
|
||||
|
||||
// Init Zoe Ph2 OBD Connection (CAN Gateway)
|
||||
|
@ -106,20 +106,20 @@ OvmsVehicleRenaultZoePh2::OvmsVehicleRenaultZoePh2() {
|
|||
#endif
|
||||
}
|
||||
|
||||
OvmsVehicleRenaultZoePh2::~OvmsVehicleRenaultZoePh2() {
|
||||
ESP_LOGI(TAG, "Stop Renault Zoe Ph2 vehicle module");
|
||||
OvmsVehicleRenaultZoePh2OBD::~OvmsVehicleRenaultZoePh2OBD() {
|
||||
ESP_LOGI(TAG, "Stop Renault Zoe Ph2 (OBD) vehicle module");
|
||||
}
|
||||
|
||||
void OvmsVehicleRenaultZoePh2::ConfigChanged(OvmsConfigParam* param) {
|
||||
if (param && param->GetName() != "xrz2")
|
||||
void OvmsVehicleRenaultZoePh2OBD::ConfigChanged(OvmsConfigParam* param) {
|
||||
if (param && param->GetName() != "xrz2o")
|
||||
return;
|
||||
|
||||
// get values from config store
|
||||
m_range_ideal = MyConfig.GetParamValueInt("xrz2", "rangeideal", 350);
|
||||
m_battery_capacity = MyConfig.GetParamValueInt("xrz2", "battcapacity", 52000);
|
||||
m_UseCarTrip = MyConfig.GetParamValueBool("xrz2", "UseCarTrip", false);
|
||||
m_UseBMScalculation = MyConfig.GetParamValueBool("xrz2", "UseBMScalculation", false);
|
||||
m_UseBMSsoc = MyConfig.GetParamValueBool("xrz2", "UseBMSsoc", false);
|
||||
m_range_ideal = MyConfig.GetParamValueInt("xrz2o", "rangeideal", 350);
|
||||
m_battery_capacity = MyConfig.GetParamValueInt("xrz2o", "battcapacity", 52000);
|
||||
m_UseCarTrip = MyConfig.GetParamValueBool("xrz2o", "UseCarTrip", false);
|
||||
m_UseBMScalculation = MyConfig.GetParamValueBool("xrz2o", "UseBMScalculation", false);
|
||||
m_UseBMSsoc = MyConfig.GetParamValueBool("xrz2o", "UseBMSsoc", false);
|
||||
StandardMetrics.ms_v_bat_range_ideal->SetValue(m_range_ideal, Kilometers);
|
||||
if (m_battery_capacity == 52000) {
|
||||
Bat_cell_capacity = 78.0 * 2 * (StandardMetrics.ms_v_bat_soh->AsFloat() / 100.0);
|
||||
|
@ -130,10 +130,10 @@ void OvmsVehicleRenaultZoePh2::ConfigChanged(OvmsConfigParam* param) {
|
|||
if (m_battery_capacity == 22000) {
|
||||
Bat_cell_capacity = 36.0 * 2 * (StandardMetrics.ms_v_bat_soh->AsFloat() / 100.0);
|
||||
}
|
||||
ESP_LOGI(TAG, "Renault Zoe Ph2 reload configuration: Range ideal: %d, Battery capacity: %d, Use Car trip counter: %s, Use BMS as energy counter: %s, Use BMS for SOC: %s", m_range_ideal, m_battery_capacity, m_UseCarTrip ? "Yes" : "No", m_UseBMScalculation ? "yes" : "no", m_UseBMSsoc ? "yes" : "no");
|
||||
ESP_LOGI(TAG, "Renault Zoe Ph2 (OBD) reload configuration: Range ideal: %d, Battery capacity: %d, Use Car trip counter: %s, Use BMS as energy counter: %s, Use BMS for SOC: %s", m_range_ideal, m_battery_capacity, m_UseCarTrip ? "Yes" : "No", m_UseBMScalculation ? "yes" : "no", m_UseBMSsoc ? "yes" : "no");
|
||||
}
|
||||
|
||||
void OvmsVehicleRenaultZoePh2::ZoeWakeUp() {
|
||||
void OvmsVehicleRenaultZoePh2OBD::ZoeWakeUp() {
|
||||
ESP_LOGI(TAG,"Zoe woke up (CAN Bus activity detected)");
|
||||
mt_bus_awake->SetValue(true);;
|
||||
StandardMetrics.ms_v_env_charging12v->SetValue(true);
|
||||
|
@ -144,7 +144,7 @@ void OvmsVehicleRenaultZoePh2::ZoeWakeUp() {
|
|||
/**
|
||||
* Handles incoming CAN-frames on bus 1
|
||||
*/
|
||||
void OvmsVehicleRenaultZoePh2::IncomingFrameCan1(CAN_frame_t* p_frame) {
|
||||
void OvmsVehicleRenaultZoePh2OBD::IncomingFrameCan1(CAN_frame_t* p_frame) {
|
||||
uint8_t *data = p_frame->data.u8;
|
||||
//ESP_LOGI(TAG, "PID:%x DATA: %02x %02x %02x %02x %02x %02x %02x %02x", p_frame->MsgID, data[0], data[1], data[2], data[3], data[4], data[5], data[6], data[7]);
|
||||
//ESP_LOGD(TAG, "Status CAN Bus: %s", mt_bus_awake->AsBool() ? "true" : "false");
|
||||
|
@ -177,7 +177,7 @@ void OvmsVehicleRenaultZoePh2::IncomingFrameCan1(CAN_frame_t* p_frame) {
|
|||
/**
|
||||
* Handles incoming poll results
|
||||
*/
|
||||
void OvmsVehicleRenaultZoePh2::IncomingPollReply(canbus* bus, uint16_t type, uint16_t pid, uint8_t* data, uint8_t length, uint16_t remain) {
|
||||
void OvmsVehicleRenaultZoePh2OBD::IncomingPollReply(canbus* bus, uint16_t type, uint16_t pid, uint8_t* data, uint8_t length, uint16_t remain) {
|
||||
string& rxbuf = zoe_obd_rxbuf;
|
||||
|
||||
//ESP_LOGV(TAG, "pid: %04x length: %d m_poll_ml_remain: %d m_poll_ml_frame: %d", pid, length, m_poll_ml_remain, m_poll_ml_frame);
|
||||
|
@ -224,7 +224,7 @@ void OvmsVehicleRenaultZoePh2::IncomingPollReply(canbus* bus, uint16_t type, uin
|
|||
}
|
||||
}
|
||||
|
||||
int OvmsVehicleRenaultZoePh2::calcMinutesRemaining(float charge_voltage, float charge_current) {
|
||||
int OvmsVehicleRenaultZoePh2OBD::calcMinutesRemaining(float charge_voltage, float charge_current) {
|
||||
float bat_soc = mt_bat_lbc_soc->AsFloat(100);
|
||||
|
||||
float remaining_wh = m_battery_capacity - (m_battery_capacity * bat_soc / 100.0);
|
||||
|
@ -235,7 +235,7 @@ int OvmsVehicleRenaultZoePh2::calcMinutesRemaining(float charge_voltage, float c
|
|||
}
|
||||
|
||||
//Handle Charging values
|
||||
void OvmsVehicleRenaultZoePh2::ChargeStatistics() {
|
||||
void OvmsVehicleRenaultZoePh2OBD::ChargeStatistics() {
|
||||
float charge_current = fabs(StandardMetrics.ms_v_bat_current->AsFloat(0, Amps));
|
||||
float charge_voltage = StandardMetrics.ms_v_bat_voltage->AsFloat(0, Volts);
|
||||
float battery_power = fabs(StandardMetrics.ms_v_bat_power->AsFloat(0, kW));
|
||||
|
@ -287,7 +287,7 @@ void OvmsVehicleRenaultZoePh2::ChargeStatistics() {
|
|||
}
|
||||
}
|
||||
|
||||
void OvmsVehicleRenaultZoePh2::EnergyStatisticsOVMS() {
|
||||
void OvmsVehicleRenaultZoePh2OBD::EnergyStatisticsOVMS() {
|
||||
float voltage = StandardMetrics.ms_v_bat_voltage->AsFloat(0, Volts);
|
||||
float current = StandardMetrics.ms_v_bat_current->AsFloat(0, Amps);
|
||||
|
||||
|
@ -302,12 +302,12 @@ void OvmsVehicleRenaultZoePh2::EnergyStatisticsOVMS() {
|
|||
}
|
||||
}
|
||||
|
||||
void OvmsVehicleRenaultZoePh2::EnergyStatisticsBMS() {
|
||||
void OvmsVehicleRenaultZoePh2OBD::EnergyStatisticsBMS() {
|
||||
StandardMetrics.ms_v_bat_energy_used->SetValue(StandardMetrics.ms_v_bat_energy_used_total->AsFloat() - mt_bat_used_start->AsFloat());
|
||||
StandardMetrics.ms_v_bat_energy_recd->SetValue(StandardMetrics.ms_v_bat_energy_recd_total->AsFloat() - mt_bat_recd_start->AsFloat());
|
||||
}
|
||||
|
||||
void OvmsVehicleRenaultZoePh2::Ticker10(uint32_t ticker) {
|
||||
void OvmsVehicleRenaultZoePh2OBD::Ticker10(uint32_t ticker) {
|
||||
if (StandardMetrics.ms_v_charge_pilot->AsBool() && !StandardMetrics.ms_v_env_on->AsBool()) {
|
||||
ChargeStatistics();
|
||||
} else {
|
||||
|
@ -319,7 +319,7 @@ void OvmsVehicleRenaultZoePh2::Ticker10(uint32_t ticker) {
|
|||
}
|
||||
}
|
||||
|
||||
void OvmsVehicleRenaultZoePh2::Ticker1(uint32_t ticker) {
|
||||
void OvmsVehicleRenaultZoePh2OBD::Ticker1(uint32_t ticker) {
|
||||
if (StandardMetrics.ms_v_env_on->AsBool() && !CarIsDriving && !m_UseCarTrip) {
|
||||
CarIsDriving = true;
|
||||
//Start trip after power on
|
||||
|
@ -379,13 +379,13 @@ void OvmsVehicleRenaultZoePh2::Ticker1(uint32_t ticker) {
|
|||
}
|
||||
}
|
||||
|
||||
class OvmsVehicleRenaultZoePh2Init {
|
||||
public: OvmsVehicleRenaultZoePh2Init();
|
||||
} MyOvmsVehicleRenaultZoePh2Init __attribute__ ((init_priority (9000)));
|
||||
class OvmsVehicleRenaultZoePh2OBDInit {
|
||||
public: OvmsVehicleRenaultZoePh2OBDInit();
|
||||
} MyOvmsVehicleRenaultZoePh2OBDInit __attribute__ ((init_priority (9000)));
|
||||
|
||||
|
||||
OvmsVehicleRenaultZoePh2Init::OvmsVehicleRenaultZoePh2Init()
|
||||
OvmsVehicleRenaultZoePh2OBDInit::OvmsVehicleRenaultZoePh2OBDInit()
|
||||
{
|
||||
ESP_LOGI(TAG, "Registering Vehicle: Renault Zoe Ph2 (9000)");
|
||||
MyVehicleFactory.RegisterVehicle<OvmsVehicleRenaultZoePh2>("RZ2","Renault Zoe Ph2");
|
||||
ESP_LOGI(TAG, "Registering Vehicle: Renault Zoe Ph2 (OBD) (9000)");
|
||||
MyVehicleFactory.RegisterVehicle<OvmsVehicleRenaultZoePh2OBD>("RZ2","Renault Zoe Ph2 (OBD)");
|
||||
}
|
|
@ -23,10 +23,10 @@
|
|||
; THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#ifndef __VEHICLE_RENAULTZOE_PH2_H__
|
||||
#define __VEHICLE_RENAULTZOE_PH2_H__
|
||||
#ifndef __VEHICLE_RENAULTZOE_PH2_OBD_H__
|
||||
#define __VEHICLE_RENAULTZOE_PH2_OBD_H__
|
||||
|
||||
static const char *TAG = "v-zoe-ph2";
|
||||
static const char *TAG = "v-zoe-ph2-obd";
|
||||
|
||||
#include <atomic>
|
||||
|
||||
|
@ -58,11 +58,11 @@ static const char *TAG = "v-zoe-ph2";
|
|||
|
||||
using namespace std;
|
||||
|
||||
class OvmsVehicleRenaultZoePh2 : public OvmsVehicle {
|
||||
class OvmsVehicleRenaultZoePh2OBD : public OvmsVehicle {
|
||||
|
||||
public:
|
||||
OvmsVehicleRenaultZoePh2();
|
||||
~OvmsVehicleRenaultZoePh2();
|
||||
OvmsVehicleRenaultZoePh2OBD();
|
||||
~OvmsVehicleRenaultZoePh2OBD();
|
||||
static void WebCfgCommon(PageEntry_t& p, PageContext_t& c);
|
||||
void ConfigChanged(OvmsConfigParam* param);
|
||||
void ZoeWakeUp();
|
||||
|
@ -133,4 +133,4 @@ class OvmsVehicleRenaultZoePh2 : public OvmsVehicle {
|
|||
string zoe_obd_rxbuf;
|
||||
};
|
||||
|
||||
#endif //#ifndef __VEHICLE_RENAULTZOE_PH2_H__
|
||||
#endif //#ifndef __VEHICLE_RENAULTZOE_PH2_OBD_H__
|
|
@ -353,12 +353,12 @@ config OVMS_VEHICLE_CAN_RX_QUEUE_SIZE
|
|||
help
|
||||
The size of the CAN bus RX queue (at the vehicle component).
|
||||
|
||||
config OVMS_VEHICLE_RENAULTZOE_PH2
|
||||
bool "Include support for Renault Zoe PH2 vehicles"
|
||||
config OVMS_VEHICLE_RENAULTZOE_PH2_OBD
|
||||
bool "Include support for Renault Zoe PH2 vehicles via OBD port (read-only)"
|
||||
default y
|
||||
depends on OVMS
|
||||
help
|
||||
Enable to include support for Renault Zoe Ph2 vehicles.
|
||||
Enable to include support for Renault Zoe Ph2 vehicles via OBD port (read-only).
|
||||
|
||||
endmenu # Vehicle Support
|
||||
|
||||
|
|
|
@ -689,7 +689,7 @@ CONFIG_OVMS_SC_GPL_WOLF=y
|
|||
# Vehicle Support
|
||||
#
|
||||
CONFIG_OVMS_VEHICLE_NONE=y
|
||||
CONFIG_OVMS_VEHICLE_RENAULTZOE_PH2=y
|
||||
CONFIG_OVMS_VEHICLE_RENAULTZOE_PH2_OBD=y
|
||||
CONFIG_OVMS_VEHICLE_RXTASK_STACK=8192
|
||||
CONFIG_OVMS_VEHICLE_CAN_RX_QUEUE_SIZE=60
|
||||
|
||||
|
|
|
@ -660,7 +660,7 @@ CONFIG_OVMS_SC_JAVASCRIPT_DUKTAPE_HEAP_UMM_BLOCKSIZE=32
|
|||
# Vehicle Support
|
||||
#
|
||||
CONFIG_OVMS_VEHICLE_NONE=y
|
||||
CONFIG_OVMS_VEHICLE_RENAULTZOE_PH2=y
|
||||
CONFIG_OVMS_VEHICLE_RENAULTZOE_PH2_OBD=y
|
||||
CONFIG_OVMS_VEHICLE_RXTASK_STACK=8192
|
||||
CONFIG_OVMS_VEHICLE_CAN_RX_QUEUE_SIZE=60
|
||||
|
||||
|
|
|
@ -660,7 +660,7 @@ CONFIG_OVMS_SC_JAVASCRIPT_DUKTAPE_HEAP_UMM_BLOCKSIZE=32
|
|||
# Vehicle Support
|
||||
#
|
||||
CONFIG_OVMS_VEHICLE_NONE=y
|
||||
CONFIG_OVMS_VEHICLE_RENAULTZOE_PH2=y
|
||||
CONFIG_OVMS_VEHICLE_RENAULTZOE_PH2_OBD=y
|
||||
CONFIG_OVMS_VEHICLE_RXTASK_STACK=8192
|
||||
CONFIG_OVMS_VEHICLE_CAN_RX_QUEUE_SIZE=60
|
||||
|
||||
|
|
|
@ -660,7 +660,7 @@ CONFIG_OVMS_SC_JAVASCRIPT_DUKTAPE_HEAP_UMM_BLOCKSIZE=32
|
|||
# Vehicle Support
|
||||
#
|
||||
CONFIG_OVMS_VEHICLE_NONE=y
|
||||
CONFIG_OVMS_VEHICLE_RENAULTZOE_PH2=y
|
||||
CONFIG_OVMS_VEHICLE_RENAULTZOE_PH2_OBD=y
|
||||
CONFIG_OVMS_VEHICLE_RXTASK_STACK=8192
|
||||
CONFIG_OVMS_VEHICLE_CAN_RX_QUEUE_SIZE=60
|
||||
|
||||
|
|
|
@ -3,36 +3,36 @@ open the door.
|
|||
No polling was active at this state. Interesting....
|
||||
|
||||
Try1:
|
||||
I (19658504) v-zoe-ph2: PID:18daf1db DATA: 07 62 92 43 00 32 5c 9a
|
||||
I (19658504) v-zoe-ph2-obd: PID:18daf1db DATA: 07 62 92 43 00 32 5c 9a
|
||||
0x9243 Cumulated energy in charge (Zxx_kwh_chg)
|
||||
Data: 0x00325c9a --> 3300506 x 0.001 -> 3300,506 kWh
|
||||
I (19659104) v-zoe-ph2: PID:18daf1db DATA: 07 62 92 45 00 36 5f 6b
|
||||
I (19659104) v-zoe-ph2-obd: PID:18daf1db DATA: 07 62 92 45 00 36 5f 6b
|
||||
0x9245 Cumulated energy in discharge:CD mode(Zxx_kwh_dch_cd)
|
||||
Data: 0x00365f6b --> 3563371 x 0.001 -> 3563,371 kWh
|
||||
I (19659704) v-zoe-ph2: PID:18daf1db DATA: 07 62 91 cf 90 29 93 ff
|
||||
I (19659704) v-zoe-ph2-obd: PID:18daf1db DATA: 07 62 91 cf 90 29 93 ff
|
||||
0x91cf Battery mileage(Zxx_dist_pack_mem)
|
||||
Data: 0x902993ff --> -1876323329 x 0.03125 --> -58635104,0312 + 67108864 --> 8473759,96875 (Implausible, calculation error or something)
|
||||
I (19660304) v-zoe-ph2: PID:18daf1db DATA: 05 62 90 01 1b f8 aa aa
|
||||
I (19660904) v-zoe-ph2: PID:18daf1db DATA: 06 62 91 c1 0c 86 30 aa
|
||||
I (19660304) v-zoe-ph2-obd: PID:18daf1db DATA: 05 62 90 01 1b f8 aa aa
|
||||
I (19660904) v-zoe-ph2-obd: PID:18daf1db DATA: 06 62 91 c1 0c 86 30 aa
|
||||
|
||||
I (19661504) v-zoe-ph2: PID:18daf1db DATA: 10 1c 62 90 1b 32 39 35 - Long ISOTP/UDS Frame 1
|
||||
I (19661614) v-zoe-ph2: PID:18daf1db DATA: 21 31 30 35 39 32 38 52 - Long ISOTP/UDS Frame 2
|
||||
I (19661724) v-zoe-ph2: PID:18daf1db DATA: 22 54 46 30 38 38 33 39 - Long ISOTP/UDS Frame 3
|
||||
I (19661834) v-zoe-ph2: PID:18daf1db DATA: 23 34 46 46 46 46 46 46 - Long ISOTP/UDS Frame 4
|
||||
I (19661504) v-zoe-ph2-obd: PID:18daf1db DATA: 10 1c 62 90 1b 32 39 35 - Long ISOTP/UDS Frame 1
|
||||
I (19661614) v-zoe-ph2-obd: PID:18daf1db DATA: 21 31 30 35 39 32 38 52 - Long ISOTP/UDS Frame 2
|
||||
I (19661724) v-zoe-ph2-obd: PID:18daf1db DATA: 22 54 46 30 38 38 33 39 - Long ISOTP/UDS Frame 3
|
||||
I (19661834) v-zoe-ph2-obd: PID:18daf1db DATA: 23 34 46 46 46 46 46 46 - Long ISOTP/UDS Frame 4
|
||||
0x901b DataRead.Battery Identification Number (BIN)
|
||||
0x32393531303539323852544630383833393446464646464646 -- Bytes to ASCII --> 295105928RTF088394FFFFFFF
|
||||
I (19661944) v-zoe-ph2: PID:18daf1db DATA: 24 46 aa aa aa aa aa aa
|
||||
I (19661944) v-zoe-ph2-obd: PID:18daf1db DATA: 24 46 aa aa aa aa aa aa
|
||||
|
||||
Try2:
|
||||
I (20789504) v-zoe-ph2: PID:18daf1db DATA: 07 62 92 43 00 32 5d c9
|
||||
I (20789504) v-zoe-ph2-obd: PID:18daf1db DATA: 07 62 92 43 00 32 5d c9
|
||||
0x9243 Cumulated energy in charge (Zxx_kwh_chg)
|
||||
Data: 0x00325dc9 --> 3300809 x 0.001 -> 3300,809 kWh
|
||||
I (20790104) v-zoe-ph2: PID:18daf1db DATA: 07 62 92 45 00 36 5f 6b
|
||||
I (20790704) v-zoe-ph2: PID:18daf1db DATA: 07 62 91 cf 90 29 93 ff
|
||||
I (20791304) v-zoe-ph2: PID:18daf1db DATA: 05 62 90 01 1c 2f aa aa
|
||||
I (20791904) v-zoe-ph2: PID:18daf1db DATA: 06 62 91 c1 0c 87 85 aa
|
||||
I (20792504) v-zoe-ph2: PID:18daf1db DATA: 10 1c 62 90 1b 32 39 35
|
||||
I (20792614) v-zoe-ph2: PID:18daf1db DATA: 21 31 30 35 39 32 38 52
|
||||
I (20792724) v-zoe-ph2: PID:18daf1db DATA: 22 54 46 30 38 38 33 39
|
||||
I (20792834) v-zoe-ph2: PID:18daf1db DATA: 23 34 46 46 46 46 46 46
|
||||
I (20792944) v-zoe-ph2: PID:18daf1db DATA: 24 46 aa aa aa aa aa aa
|
||||
I (20790104) v-zoe-ph2-obd: PID:18daf1db DATA: 07 62 92 45 00 36 5f 6b
|
||||
I (20790704) v-zoe-ph2-obd: PID:18daf1db DATA: 07 62 91 cf 90 29 93 ff
|
||||
I (20791304) v-zoe-ph2-obd: PID:18daf1db DATA: 05 62 90 01 1c 2f aa aa
|
||||
I (20791904) v-zoe-ph2-obd: PID:18daf1db DATA: 06 62 91 c1 0c 87 85 aa
|
||||
I (20792504) v-zoe-ph2-obd: PID:18daf1db DATA: 10 1c 62 90 1b 32 39 35
|
||||
I (20792614) v-zoe-ph2-obd: PID:18daf1db DATA: 21 31 30 35 39 32 38 52
|
||||
I (20792724) v-zoe-ph2-obd: PID:18daf1db DATA: 22 54 46 30 38 38 33 39
|
||||
I (20792834) v-zoe-ph2-obd: PID:18daf1db DATA: 23 34 46 46 46 46 46 46
|
||||
I (20792944) v-zoe-ph2-obd: PID:18daf1db DATA: 24 46 aa aa aa aa aa aa
|
||||
|
|
|
@ -3,48 +3,48 @@ Wallbox (openWB, CP disconnect).
|
|||
No polling was active at this state. Interesting....
|
||||
|
||||
Try1:
|
||||
I (19804504) v-zoe-ph2: PID:18daf1db DATA: 05 62 92 10 00 6d aa aa
|
||||
I (19804504) v-zoe-ph2-obd: PID:18daf1db DATA: 05 62 92 10 00 6d aa aa
|
||||
0x9210 Overall number of complete charge(Zxx_full_chg_ctr)
|
||||
Data: 0x006d --> 109
|
||||
I (19805104) v-zoe-ph2: PID:18daf1db DATA: 05 62 92 15 00 87 aa aa
|
||||
I (19805704) v-zoe-ph2: PID:18daf1db DATA: 10 35 62 91 d1 00 00 00
|
||||
I (19805804) v-zoe-ph2: PID:18daf1db DATA: 21 00 00 00 00 00 00 00
|
||||
I (19805914) v-zoe-ph2: PID:18daf1db DATA: 22 00 0d 00 1e 00 13 00
|
||||
I (19806024) v-zoe-ph2: PID:18daf1db DATA: 23 00 00 02 01 16 01 86
|
||||
I (19806134) v-zoe-ph2: PID:18daf1db DATA: 24 02 19 00 31 00 00 01
|
||||
I (19806244) v-zoe-ph2: PID:18daf1db DATA: 25 78 02 9e 03 b6 00 44
|
||||
I (19806354) v-zoe-ph2: PID:18daf1db DATA: 26 00 00 00 02 00 32 00
|
||||
I (19806464) v-zoe-ph2: PID:18daf1db DATA: 27 13 00 01 00 00 aa aa
|
||||
I (19806904) v-zoe-ph2: PID:18daf1db DATA: 10 35 62 91 d2 00 00 00
|
||||
I (19807004) v-zoe-ph2: PID:18daf1db DATA: 21 00 00 00 00 00 00 00
|
||||
I (19807114) v-zoe-ph2: PID:18daf1db DATA: 22 00 02 00 04 00 02 00
|
||||
I (19807224) v-zoe-ph2: PID:18daf1db DATA: 23 00 00 00 00 5b 00 a1
|
||||
I (19807334) v-zoe-ph2: PID:18daf1db DATA: 24 00 b0 00 1d 00 00 00
|
||||
I (19807454) v-zoe-ph2: PID:18daf1db DATA: 25 bd 01 58 01 ba 00 68
|
||||
I (19807554) v-zoe-ph2: PID:18daf1db DATA: 26 00 00 00 01 00 0d 00
|
||||
I (19807664) v-zoe-ph2: PID:18daf1db DATA: 27 02 00 02 00 00 aa aa
|
||||
I (19808104) v-zoe-ph2: PID:18daf1db DATA: 05 62 90 01 1b f7 aa aa
|
||||
I (19805104) v-zoe-ph2-obd: PID:18daf1db DATA: 05 62 92 15 00 87 aa aa
|
||||
I (19805704) v-zoe-ph2-obd: PID:18daf1db DATA: 10 35 62 91 d1 00 00 00
|
||||
I (19805804) v-zoe-ph2-obd: PID:18daf1db DATA: 21 00 00 00 00 00 00 00
|
||||
I (19805914) v-zoe-ph2-obd: PID:18daf1db DATA: 22 00 0d 00 1e 00 13 00
|
||||
I (19806024) v-zoe-ph2-obd: PID:18daf1db DATA: 23 00 00 02 01 16 01 86
|
||||
I (19806134) v-zoe-ph2-obd: PID:18daf1db DATA: 24 02 19 00 31 00 00 01
|
||||
I (19806244) v-zoe-ph2-obd: PID:18daf1db DATA: 25 78 02 9e 03 b6 00 44
|
||||
I (19806354) v-zoe-ph2-obd: PID:18daf1db DATA: 26 00 00 00 02 00 32 00
|
||||
I (19806464) v-zoe-ph2-obd: PID:18daf1db DATA: 27 13 00 01 00 00 aa aa
|
||||
I (19806904) v-zoe-ph2-obd: PID:18daf1db DATA: 10 35 62 91 d2 00 00 00
|
||||
I (19807004) v-zoe-ph2-obd: PID:18daf1db DATA: 21 00 00 00 00 00 00 00
|
||||
I (19807114) v-zoe-ph2-obd: PID:18daf1db DATA: 22 00 02 00 04 00 02 00
|
||||
I (19807224) v-zoe-ph2-obd: PID:18daf1db DATA: 23 00 00 00 00 5b 00 a1
|
||||
I (19807334) v-zoe-ph2-obd: PID:18daf1db DATA: 24 00 b0 00 1d 00 00 00
|
||||
I (19807454) v-zoe-ph2-obd: PID:18daf1db DATA: 25 bd 01 58 01 ba 00 68
|
||||
I (19807554) v-zoe-ph2-obd: PID:18daf1db DATA: 26 00 00 00 01 00 0d 00
|
||||
I (19807664) v-zoe-ph2-obd: PID:18daf1db DATA: 27 02 00 02 00 00 aa aa
|
||||
I (19808104) v-zoe-ph2-obd: PID:18daf1db DATA: 05 62 90 01 1b f7 aa aa
|
||||
|
||||
Try2:
|
||||
I (21284064) v-zoe-ph2: PID:18daf1db DATA: 05 62 92 10 00 6d aa aa
|
||||
I (21284664) v-zoe-ph2: PID:18daf1db DATA: 05 62 92 15 00 88 aa aa
|
||||
I (21285264) v-zoe-ph2: PID:18daf1db DATA: 10 35 62 91 d1 00 00 00
|
||||
I (21285374) v-zoe-ph2: PID:18daf1db DATA: 21 00 00 00 00 00 00 00
|
||||
I (21285484) v-zoe-ph2: PID:18daf1db DATA: 22 00 0d 00 1e 00 13 00
|
||||
I (21285594) v-zoe-ph2: PID:18daf1db DATA: 23 00 00 02 01 16 01 86
|
||||
I (21285704) v-zoe-ph2: PID:18daf1db DATA: 24 02 19 00 31 00 00 01
|
||||
I (21285814) v-zoe-ph2: PID:18daf1db DATA: 25 78 02 9e 03 b7 00 44
|
||||
I (21285924) v-zoe-ph2: PID:18daf1db DATA: 26 00 00 00 02 00 32 00
|
||||
I (21286034) v-zoe-ph2: PID:18daf1db DATA: 27 13 00 01 00 00 aa aa
|
||||
I (21286474) v-zoe-ph2: PID:18daf1db DATA: 10 35 62 91 d2 00 00 00
|
||||
I (21286574) v-zoe-ph2: PID:18daf1db DATA: 21 00 00 00 00 00 00 00
|
||||
I (21286684) v-zoe-ph2: PID:18daf1db DATA: 22 00 02 00 04 00 02 00
|
||||
I (21286794) v-zoe-ph2: PID:18daf1db DATA: 23 00 00 00 00 5b 00 a1
|
||||
I (21286904) v-zoe-ph2: PID:18daf1db DATA: 24 00 b0 00 1d 00 00 00
|
||||
I (21287014) v-zoe-ph2: PID:18daf1db DATA: 25 bd 01 58 01 ba 00 68
|
||||
I (21287124) v-zoe-ph2: PID:18daf1db DATA: 26 00 00 00 01 00 0d 00
|
||||
I (21287234) v-zoe-ph2: PID:18daf1db DATA: 27 02 00 02 00 00 aa aa
|
||||
I (21287674) v-zoe-ph2: PID:18daf1db DATA: 05 62 90 01 1c 2e aa aa
|
||||
I (21284064) v-zoe-ph2-obd: PID:18daf1db DATA: 05 62 92 10 00 6d aa aa
|
||||
I (21284664) v-zoe-ph2-obd: PID:18daf1db DATA: 05 62 92 15 00 88 aa aa
|
||||
I (21285264) v-zoe-ph2-obd: PID:18daf1db DATA: 10 35 62 91 d1 00 00 00
|
||||
I (21285374) v-zoe-ph2-obd: PID:18daf1db DATA: 21 00 00 00 00 00 00 00
|
||||
I (21285484) v-zoe-ph2-obd: PID:18daf1db DATA: 22 00 0d 00 1e 00 13 00
|
||||
I (21285594) v-zoe-ph2-obd: PID:18daf1db DATA: 23 00 00 02 01 16 01 86
|
||||
I (21285704) v-zoe-ph2-obd: PID:18daf1db DATA: 24 02 19 00 31 00 00 01
|
||||
I (21285814) v-zoe-ph2-obd: PID:18daf1db DATA: 25 78 02 9e 03 b7 00 44
|
||||
I (21285924) v-zoe-ph2-obd: PID:18daf1db DATA: 26 00 00 00 02 00 32 00
|
||||
I (21286034) v-zoe-ph2-obd: PID:18daf1db DATA: 27 13 00 01 00 00 aa aa
|
||||
I (21286474) v-zoe-ph2-obd: PID:18daf1db DATA: 10 35 62 91 d2 00 00 00
|
||||
I (21286574) v-zoe-ph2-obd: PID:18daf1db DATA: 21 00 00 00 00 00 00 00
|
||||
I (21286684) v-zoe-ph2-obd: PID:18daf1db DATA: 22 00 02 00 04 00 02 00
|
||||
I (21286794) v-zoe-ph2-obd: PID:18daf1db DATA: 23 00 00 00 00 5b 00 a1
|
||||
I (21286904) v-zoe-ph2-obd: PID:18daf1db DATA: 24 00 b0 00 1d 00 00 00
|
||||
I (21287014) v-zoe-ph2-obd: PID:18daf1db DATA: 25 bd 01 58 01 ba 00 68
|
||||
I (21287124) v-zoe-ph2-obd: PID:18daf1db DATA: 26 00 00 00 01 00 0d 00
|
||||
I (21287234) v-zoe-ph2-obd: PID:18daf1db DATA: 27 02 00 02 00 00 aa aa
|
||||
I (21287674) v-zoe-ph2-obd: PID:18daf1db DATA: 05 62 90 01 1c 2e aa aa
|
||||
|
||||
Wirehshark Dump with ISOTP and UDS decoding:
|
||||
|
||||
|
|
|
@ -2,22 +2,22 @@ Zoe was charging while locked and I stopped charging with my wallbox.
|
|||
No polling was active at this state. Interesting....
|
||||
|
||||
Try1:
|
||||
I (20114294) v-zoe-ph2: PID:18daf1db DATA: 07 62 92 43 00 32 5d c9
|
||||
I (20114294) v-zoe-ph2-obd: PID:18daf1db DATA: 07 62 92 43 00 32 5d c9
|
||||
0x9243 Cumulated energy in charge (Zxx_kwh_chg)
|
||||
Data: 0x00325dc9 --> 3300809 x 0.001 -> 3300,809 kWh
|
||||
I (20114894) v-zoe-ph2: PID:18daf1db DATA: 05 62 90 01 1c 30 aa aa
|
||||
I (20114894) v-zoe-ph2-obd: PID:18daf1db DATA: 05 62 90 01 1c 30 aa aa
|
||||
0x9001 Battery SOC(Zxx_bsoc_avg)
|
||||
Data: 0x1c30 --> 7216 --> 72,16%
|
||||
I (20115494) v-zoe-ph2: PID:18daf1db DATA: 05 62 91 bc 03 e8 aa aa
|
||||
I (20116094) v-zoe-ph2: PID:18daf1db DATA: 05 62 91 bd 03 e8 aa aa
|
||||
I (20150984) v-zoe-ph2: PID:18daf1da DATA: 06 62 20 06 00 4d d4 aa
|
||||
I (20115494) v-zoe-ph2-obd: PID:18daf1db DATA: 05 62 91 bc 03 e8 aa aa
|
||||
I (20116094) v-zoe-ph2-obd: PID:18daf1db DATA: 05 62 91 bd 03 e8 aa aa
|
||||
I (20150984) v-zoe-ph2-obd: PID:18daf1da DATA: 06 62 20 06 00 4d d4 aa
|
||||
|
||||
Try2:
|
||||
I (21594984) v-zoe-ph2: PID:18daf1da DATA: 06 62 20 06 00 4d d4 aa
|
||||
I (21634064) v-zoe-ph2: PID:18daf1db DATA: 07 62 92 43 00 32 5d c9
|
||||
I (21634664) v-zoe-ph2: PID:18daf1db DATA: 05 62 90 01 1c 2b aa aa
|
||||
I (21635264) v-zoe-ph2: PID:18daf1db DATA: 05 62 91 bc 03 e8 aa aa
|
||||
I (21635864) v-zoe-ph2: PID:18daf1db DATA: 05 62 91 bd 03 e8 aa aa
|
||||
I (21594984) v-zoe-ph2-obd: PID:18daf1da DATA: 06 62 20 06 00 4d d4 aa
|
||||
I (21634064) v-zoe-ph2-obd: PID:18daf1db DATA: 07 62 92 43 00 32 5d c9
|
||||
I (21634664) v-zoe-ph2-obd: PID:18daf1db DATA: 05 62 90 01 1c 2b aa aa
|
||||
I (21635264) v-zoe-ph2-obd: PID:18daf1db DATA: 05 62 91 bc 03 e8 aa aa
|
||||
I (21635864) v-zoe-ph2-obd: PID:18daf1db DATA: 05 62 91 bd 03 e8 aa aa
|
||||
|
||||
Wirehshark Dump with ISOTP and UDS decoding:
|
||||
|
||||
|
|
Loading…
Reference in a new issue