Was den Ladezustand der Batterie angeht, habe ich den Job gefunden -> siehe Screenshot
Andererseits habe ich noch etliche Probleme:
Die Sache mit STAT_DIFFERENZDRUCK_CSF_WERT funktioniert nur, wenn ich für SGBD D71N47A0 eintrage, obwohl auf dem Türholm des Autos N47D20C steht 
Das nächste Problem: Wenn ich den STAT_DIFFERENZDRUCK_CSF job in die Motor ccpage einfüge, werden die Werte des "Messwertblocks" nur einmalig für ca. 0,5 Sekunden (!) angezeigt, danach nicht mehr, egal ob sgbd = "D71N47A0" oder sgbd = "D71N47C0"
Kann mir jemand sagen, wo der Fehler in diesem Script ist:
<?xml version="1.0" encoding="utf-8"?>
<fragment xmlns="http://www.holeschak.de/BmwDeepObd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.holeschak.de/BmwDeepObd BmwDeepObd.xsd">
<page name="!PAGE_NAME" logfile="N47_{D}.log"> <!--Name der Log-Datei ggf. anpassen -->
<strings>
<string name="!PAGE_NAME">Motor</string> <!-- Seitenname in Deep OBD -->
<string name="motordrehzahl">Motordrehzahl [U/min]:</string>
<string name="geschwindigkeit">Geschwindigkeit [km/h]:</string>
<string name="temp_kuehlmittel">Kühlmitteltemperatur [°C]:</string>
<string name="temp_oel2">Oeltemperatur [°C]:</string>
<string name="ladedruck_ist">Ladedruck ist [mbar]:</string>
<string name="ladedruck_soll">Ladedruck soll [mbar]:</string>
<string name="tastver_ladedrucksteller">Tastverhältnis Ladedrucksteller [%]:</string>
<string name="hfm_lms">HFM-Luftmassenstrom [kg/h]:</string>
<string name="diffdruck_dpf">Differenzdruck DPF [mbar]:</string>
<string name="absolut_dpf">Absolut vor DPF [mbar]:</string>
<string name="einspritzmenge">Einspritzmenge ist [mg/hub]:</string>
<string name="einspritz_soll">Einspritzmenge soll [mg/hub]:</string>
<string name="ladelufttemp">Ladelufttemperatur [°C]:</string>
<string name="strecke_letzte_regen">Strecke seit letzter Regeneration [km]:</string>
<string name="durchschnitt_zw_regeneration">Durchschnitt zw. Regenerationen [km]:</string>
<string name="regenerationsstatus">Regenerationsstatus [HEX]:</string>
<string name="regenerationsanforderung">Regenerationsanforderung:</string>
<string name="russmasse">Russmasse [g]:</string>
<string name="aschemasse">Aschemasse [g]:</string>
<string name="temp_kat">Abgastemperatur vor KAT [°C]:</string>
<string name="rpm_turbo">Drehzahl Turbolader [U/min]:</string>
<string name="diff_csf">DIFFERENZDRUCK_CSF[mbar]:</string>
</strings>
<jobs sgbd="D71N47A0">
<!-- Hier die unterschiedlichen PRG Dateien eintragen. z.B. D71N47C0 / D73N57C0 -->
<job name="STATUS_DIFFERENZDRUCK_CSF">
<display name="diff_csf" result="STAT_DIFFERENZDRUCK_CSF_WERT" format="3.0R" log_tag="diffcsf" />
</job>
<job name="STATUS_MESSWERTBLOCK_LESEN"
args_first="JA;IPLAD;SPLAD;IALDS;ILMKG;IMEIA;INMOT;IVKMH;ITLAL;IDSLRE;ITAVO;IKMZWREG;CoEOM_stOpModeAct;PFltRgn_numRgn;IMRUP;IMASOEL;SMEIN;ASMod_nTrbCh;ITKUM;ITOEL;IPDIP"
args="NEIN;IPLAD;SPLAD;IALDS;ILMKG;IMEIA;INMOT;IVKMH;ITLAL;IDSLRE;ITAVO;IKMZWREG;CoEOM_stOpModeAct;PFltRgn_numRgn;IMRUP;IMASOEL;SMEIN;ASMod_nTrbCh;ITKUM;ITOEL;IPDIP">
<display name="geschwindigkeit" result="STAT_GESCHWINDIGKEIT_WERT" format="3.0R" log_tag="Geschwindigkeit" /> <!-- IVKMH -->
<display name="motordrehzahl" result="STAT_MOTORDREHZAHL_WERT" format="4.0R" log_tag="Motordrehzahl" /> <!-- INMOT -->
<display name="ladedruck_ist" result="STAT_LADEDRUCK_WERT" format="6.2R" log_tag="Ladedruck" /> <!-- IPLAD -->
<display name="ladedruck_soll" result="STAT_LADEDRUCK_SOLL_WERT" format="6.2R" log_tag="Ladedruck_soll" /> <!-- SPLAD -->
<display name="tastver_ladedrucksteller" result="STAT_LADEDRUCKSTELLER_ANSTEUERUNG_WERT" format="3.0R" log_tag="Ladedrucksteller" /> <!-- IALDS -->
<display name="hfm_lms" result="STAT_LUFTMASSE_WERT" format="8.4R" log_tag="Luftmasse" /> <!-- ILMKG -->
<display name="diffdruck_dpf" result="STAT_DIFFERENZDRUCK_UEBER_PARTIKELFILTER_WERT" format="6.2R" log_tag="Differenzdruck DPF" /> <!-- IPDIP -->
<display name="einspritz_soll" result="STAT_EINSPRITZMENGE_SOLL_WERT" format="7.4R" log_tag="Einspritz_soll" /> <!-- SMEIN -->
<display name="einspritzmenge" result="STAT_EINSPRITZMENGE_AKTUELL_WERT" format="7.4R" log_tag="Einspritzmenge" /> <!-- IMEIA -->
<display name="ladelufttemp" result="STAT_LADELUFTTEMPERATUR_WERT" format="3.0R" log_tag="Ladelufttemperatur" /> <!-- ITLAL -->
<display name="strecke_letzte_regen" result="STAT_STRECKE_SEIT_ERFOLGREICHER_REGENERATION_WERT" log_tag="km_seit_reg"/> <!-- IDSLRE -->
<display name="durchschnitt_zw_regeneration" result="STAT_DURCHSCHNITT_KILOMETER_ZWISCHEN_REGENERATIONEN_WERT" format="3.0R" /> <!-- IKMZWREG -->
<display name="regenerationsstatus" result="STAT_CoEOM_stOpModeAct_WERT" format="" log_tag="Reg_Status"/> <!-- CoEOM_stOpModeAct -->
<display name="regenerationsanforderung" result="STAT_PFltRgn_numRgn_WERT" format="2.0R" log_tag="Reg_Anforderung"/> <!-- PFltRgn_numRgn -->
<display name="russmasse" result="STAT_RUSSMASSE_IM_PARTIKELFILTER_WERT" format="4.1R" log_tag="Russmasse" /> <!-- IMRUP -->
<display name="aschemasse" result="STAT_OELASCHENMASSE_WERT" format="4.1R" log_tag="Aschemasse" /> <!-- IMASOEL -->
<display name="rpm_turbo" result="STAT_ASMod_nTrbCh_WERT" format="6.0R" log_tag="rpm_turbo" /> <!-- ASMod_nTrbCh -->
<display name="temp_kat" result="STAT_ABGASTEMPERATUR_VOR_KATALYSATOR_WERT" format="3.0R" log_tag="Temp KAT" /> <!-- ITAVO -->
<display name="temp_kuehlmittel" result="STAT_KUEHLMITTELTEMPERATUR_WERT" format="4.1R" log_tag="Kuehlmitteltemperatur" /> <!-- ITKUM -->
<display name="absolut_dpf" result="STAT_ABGASDRUCK_VOR_PARTIKELFILTER_1_WERT" format="6.2R" log_tag="Absolutdruck DPF" />
<display name="temp_oel2" result="STAT_MOTOROEL_TEMPERATUR_WERT" format="4.1R" log_tag="Oeltemperatur2" /> <!-- ITOEL -->
</job>
</jobs>
<code show_warnigs="true"> <!-- Umformatierung von Werten -->
<![CDATA[
class PageClass
{
public string FormatResult(JobReader.PageInfo pageInfo, Dictionary<string, EdiabasNet.ResultData> resultDict, string resultName)
{
string result = string.Empty;
bool found;
switch (resultName)
{
case "STATUS_MESSWERTBLOCK_LESEN#STAT_STRECKE_SEIT_ERFOLGREICHER_REGENERATION_WERT":
result = string.Format(ActivityMain.Culture, "{0,6:0.0}", ActivityMain.GetResultDouble(resultDict, resultName, out found) / 1000.0);
if (!found) result = string.Empty;
break;
}
return result;
}
}
]]>
</code>
</page>
</fragment>
Alles anzeigen