3.2.016-270-g32a9391b OTA build Sat Aug 21 17:48:25 CEST 2021 See ovms3.log for details 32a9391b Vehicle: emit standard events on changing v.e.gear & v.e.drivemode 7ad2db95 VW e-Up/OBD: read ignition state from ECU, support v.e.gear & v.e.drivemode (v.e.gear only on 2020 model) c950cbd1 VW e-Up: add MFD range energy to XVU-LOG-SOCMon 5df35aeb Framework: add command task priority config, default all command tasks and scripts to same priority (5) to avoid script queue drops & WDTs 10fb9416 VW e-Up/OBD: fix user SOC by always using the charge manager SOC; this fixes both the low SOC discrepancy and the SOC jumps between awake/charging and driving phases 0386c710 VW e-Up/OBD: fix cleared charge type in grid log on stop/done entries db7c83c1 VW e-Up: add topping off phase support, add timer mode change notification, fix timer mode processing & charge time predictions acd2bdb5 Vehicle: introduce separate notification subtype for topping off to enable notification channel control 087c31ca VW e-Up: fix grid counter reset on charge start fc47a85d Vehicle: fix minsoc alert trigger for fraction SOCs 17a37c50 Config: add /store/usr directory to config backup 196f4f57 Web UI: raise command timeout for config backup/restore to 120 seconds db4a5797 Plugin AuxBatMon: fix restoring data from SD card on reboot 2a3a09e4 Duktape/VFS: inhibit save during shutdown, delay shutdown when saving 23a19c72 Boot: fix shutdown race condition, add restart pending logging bc5aa5ca VW e-Up: read charge manager SOC while driving, add SOC monitoring data log d18af314 VW e-Up: use our charge time prediction for times >= 10:30h (car limit) 585ebc82 VW e-Up/OBD: validate BMS odometer reading 23c374f3 VW e-Up/OBD: use 1km resolution odometer of ECU 8C 05ec26aa Web UI: add minsoc alert & location streaming to notifications config d82f0fce Vehicle: fix times in grid & trip log, raise precision, add trip start entry 7b329ddd VW e-Up/OBD: polling control for diagnostic/adaptation sessions 77c1e792 VW e-Up/OBD: charge start notification delay configuration to accomodate current ramp-up, document config variables fee34488 Vehicle: provide momentary ideal range gain/loss speed as a metric, add charge speed to "stat" output & MP message "S" 5565dbf9 Vehicle: change stat command charge ETRs to hh:mm format 2962c6c9 Address Michael's feedback: eliminate unneeded status variable and move tx buffer state keeping inside the critical section lock. 6aa5ab81 Second of four espressif TWAI/CAN errata fixes: SW workaround for TX interrupt lost a91c6ee1 Implement NMEA checksum validation 001b3182 New plugin: VW e-Up ECU Library & Toolkit 8ebbb37c VW e-Up/OBD: charge time prediction while not charging & full charge with limit 4c22998e serverV2: periodic send if generating 710e9ffb Suppress false theft alerts due to a suspected SIMCOM GPS bug #2 Check for zero longitude too (also seen: A,B -> A,B -> A,0 -> A,B -> A,B) dfda1607 serverV2: change to adhoc update and add documentation b1f856dd CAN AsynchronousInterruptHandler change to support receiving multiple frames per interrupt 2329b879 Change test cantx to use sequence as message ID 988eca92 Vehicle/poller: add standard negative result code names fcf23108 Move "bus off" errata code to the top of the interrupt handling loop efd767b7 Address lastest feedback from Michael: Enter listen instead of reset mode Or in instead of clobbering potential new interrupt bits Add a more detailed description of the TWAI_ERRATA_FIX_BUS_OFF_REC errata workaround description 038a4a2f Make changes based on feedback from Michael: Handle bus-off interrupt after TX and RX interrupts. Explicitly enter/exit reset mode. 9280bd38 First attempt at porting the first of four espressif TWAI/CAN errata fixes 1400b2f7 Poller: fix UDS 0x31 Routine Control PID size, add explanation 54b9b5cb Revert "Poller: add 24 bit PID size support, fix routine control PID sizes" a9fb6f77 Utils: fix int_to_hex for unsigned char 7ce60604 Scripting API: add OvmsVehicle.ObdRequest() a4008e07 Utils: add int_to_hex string conversion caf65c23 Poller: add 24 bit PID size support, fix routine control PID sizes 6e99b1d2 NL: update charge port for gen and wait states 25c5cb57 Commands: add echo & sleep commands (script utilities) 49adb6ab MicroRL: allow quoting for up to 10 command arguments b1fe7cce VWeUp: add web dashboard configuration e19cce60 WebUI dashboard: add digital displays for voltage, SOC, consumption & power 56670c79 serverV2: remove exporting from utils e05d5b88 serverV2: include all v.g metrics and reorder 67425acf MCP2515: Change 1Mbps params to cnf1=0x00; cnf2=0xca; cnf3=0x81 (was cnf1=0x00; cnf2=0xd0; cnf3=0x82) to match Arduino MCP driver (https://github.com/coryjfowler/MCP_CAN_lib/commit/ece730cf697fef1cbe8a90111694868168d41000) 0aad1a9f CAN logger: CanSwitch dont log transmit events 11ad7562 Vehicle/Poller: add VW specific OBD/UDS request types 0x18 & 0x32 99c5c478 Vehicle/Poller: fix VW TP response pending processing 99ebd0f3 CAN logger: CanSwitch formatter (as used in Tesla Roadster VMS) 934076e1 VWeUp/OBD: add txid & rxid to unhandled poll response log 72683f3f Vehicle/Poller: add support for VW TP 2.0 (see vehicle.h comment) a908613f serverV2: add v.g metrics 54f00d7a NL: use charge pilot stale to set charge door closed 4a7e4f96 Adjusted granny charge profile c01779a0 NL: add V2X web config for minSOC and minRange 0557d33e NL: alpha V2X implementation b0f2bb87 NL: add V2X capability c1b81c35 Docs/Server HTTP API: add vehicle connect & disconnect calls, add message times/ages and cabin temperature response fields 2e547d54 VWeUp/OBD: delay charge start reference to collect SOC corrections d7705149 Updated Charge Limit notify messages c4a7f4ee NL: code tidy up b2afab5e NL: remove acvoltagemultiplier references 38f9210e NL: add interrupt status 8faf7d41 NL: fix NaN on voltage loss acaaa58f NL: correct units 929a5511 NL: refactor 0x390 messages f0c3fbf7 NL: improved new metric naming 6c277089 NL: add extra xnl metrics, update charge port status 60e63d5b VWeUp/OBD: add chargecap log test/debug configs 11981be4 VWeUp/OBD: fix ECU info electronics IDs, add immobilizer unit IDs f34d0480 VW e-Up/OBD: add MFD range estimation as SOH source, add config option for SOH source d3675519 VWeUp/OBD: fix charge done detection 6c1fb709 Make variant B also go to sleep 50s after 12V battery < 12.9V 2cf21e76 MG:Battery config - Range display in miles accae394 Updated code in calcMinutesRemaining ea047f16 vehicle_mgev_b.cpp: - check if GWM is already unlocked first before authentication - only authenticate with GWM since DRL command will start BCM authentication by itself if it detects that BCM is not authenticated 61f2182c - Make shell command drlauth become drl and make original drl become drln. - Make both drl/drln commands available to both variants - Setup m_bcm_auth in variant B - Set ms_v_env_awake and ms_v_env_ctrl_login to false when GWM is Unknown bea3673e index.rst - Added more notes to shell commands 3d8d4804 Fixed sections syntax for index.rst b04dba74 Modified index.rst 0f41b593 Corrected index.rst 6965145a - Moved to 2 car variants architecture where features are as follows: A: ✔ Zombie mode | ❌ GWM authentication | ❌ Poll BCM B: ❌ Zombie mode | ✔ GWM authentication | ✔ Poll BCM To current knowledge, MG ZS EVs from the UK and Netherlands are variant A and MG ZS EVs from Thailand are variant B. For cars from other countries, should decide on variant by seeing if they experience Zombie mode. If they do, should use variant A, if not, even though GWM is unlocked and doesn't require GWM authentication, should use variant B to avoid Zombie mode side effects and get richer metrics with BCM PIDs. For example Australian cars don't have Zombie mode and don't require GWM authentication. In this case, should use variant B. 957443f9 Battery config - Range displays in Miles 58196d45 Poller: support multi frame requests 4e7f9980 canlog: Fix tcpserver startup when wifi is down 2fddf688 canlog: Fix canlog handling of mongoose rx data with more than one message per packet b2fb2c16 Use MAP_CAN_SPEED() to get accurately return gvret 33.333 and 83.333 speeds canformat_gvret_binary::PopulateBusList12() and canformat_gvret_binary::PopulateBusList3() were just multiplying bus->m_speed by 1000; the MAP_CAN_SPEED() understands CAN_SPEED_33KBPS and CAN_SPEED_83KBPS e88988e5 Increased maximum charge time to 2 days 7e8e39c8 Poller: support CAN extended frame mode (29 bit identifiers) 3b244e30 Modified SOC & Range Limit reached notification code 93613a2b dbc: Support BA_DEF_ and BA_DEF_DEF_ sections