From a3de58fb58fe7690f7d67e44a1d90793d72cb68b Mon Sep 17 00:00:00 2001 From: Zuinige Rijder Date: Tue, 29 Nov 2022 11:42:51 +0100 Subject: [PATCH] Robustness and cleanup --- README.md | 676 +++++++++++++++------------------ examples/summary.day.csv | 20 +- examples/summary.day.xlsx | Bin 85710 -> 81639 bytes examples/summary.py_output.txt | 66 ++-- kml.py | 33 +- monitor.py | 15 +- requirements.txt | 1 - summary.py | 169 ++++----- 8 files changed, 455 insertions(+), 525 deletions(-) diff --git a/README.md b/README.md index d4dab3c..062f110 100644 --- a/README.md +++ b/README.md @@ -42,7 +42,7 @@ You can analyze the information over time with other scripts or e.g. with Excel: The following tools are available as pure Python3 scripts: - monitor.py: Simple Python3 script to monitor values using [hyundai_kia_connect_api](https://github.com/Hyundai-Kia-Connect/hyundai_kia_connect_api) - kml.py: transform the monitor.csv data to monitor.kml, so you can use it in e.g. Google My Maps to see on a map the captured locations -- summary.py: make summary per MOVE, TRIP, DAY, WEEK, MONTH, YEAR with monitor.csv as input +- summary.py: make summary per TRIP, DAY, WEEK, MONTH, YEAR with monitor.csv as input - shrink.py: Simple Python3 script to shrink monitor.csv, identical lines removed (first date/time column excluded) - Raspberry pi configuration: example script to run monitor.py once per hour on a linux based system - debug.py: same sort of python script as monitor.py, but debug logging enabled and all the (internal) data is just printed to standard output in pretty print @@ -69,7 +69,6 @@ I have installed the following packages (e.g. use python -m pip install "package In hyundai_kia_connect_monitor summary.py also the following packages are used: - geopy==2.2.0 gspread==5.6.2 If everything works, it's a matter of regularly collecting the information, for example by running the "python monitor.py" command once an hour. A server is of course best, I use a Raspberry Pi, but it can also regularly be done on a Windows 10 or Mac computer, provided the computer is on. @@ -189,7 +188,7 @@ With 60-minute forced updates: ``` # summary.py -make summary per TRIP, DAY, WEEK, MONTH, YEAR, MOVE, ADDRESS or a combination with monitor.csv as input +make summary per TRIP, DAY, WEEK, MONTH, YEAR or a combination with monitor.csv as input Usage: ``` @@ -208,25 +207,13 @@ or python summary.py month or python summary.py year -or -python summary.py move -or -python summary.py address -or -python summary.py move address -or -python summary.py day trip address -or -python summary.py day trip move address ``` - INPUTFILE: summary.cfg (configuration of kilometers or miles, net battery size in kWh, average cost per kWh and cost currency) - INPUTFILE: monitor.csv -- standard output: summary per TRIP, DAY, WEEK, MONTH, YEAR, MOVE, ADDRESS in csv format, default all summaries (except move and address) when no parameters given +- standard output: summary per TRIP, DAY, WEEK, MONTH, YEAR in csv format, default all summaries when no parameters given Notes: - add trip, day, week, month, year or -trip or a combination as parameter, which respectively only shows lines for TRIP, DAY, WEEK, MONTH, YEAR or all without TRIP or a combination -- "move" argument computes the distance between two changed coordinates with geopy, actually driven distance can be of course (much) longer -- "address" shows the address of a coordinate for "move" or "trip" with geopy, because Nominatim has a 1000 query limit per day and bulk queries are not appreciated, one second sleep is added per address lookup. - the summary is done in one go, keeping track of TRIP, DAY, WEEK, MONTH and YEAR totals - the summary is based on the captured data, so in fact there might be e.g. charges or drives missed or consumption for trips is inaccurate @@ -266,6 +253,7 @@ python summary.py sheetupdate For easier use on a mobile phone, the spreadsheet will contain first the overall information in row 1 till 20: - Last update +- Last entry - Odometer km - Driven km - +kWh @@ -283,12 +271,10 @@ For easier use on a mobile phone, the spreadsheet will contain first the overall - Max 12V% - #Charges - #Trips -- #Moves -- Last entry And thereafter the last 50 lines of the summary in reverse order, so you do not need to scroll to the bottom for the latest values. The following columns per row: ``` - Period date info odometer delta km +kWh -kWh km/kWh kWh/100km cost Euro SOC%CUR AVG MIN MAX 12V%CUR AVG MIN MAX #charges #trips #moves + Period date info odometer delta km +kWh -kWh km/kWh kWh/100km cost Euro SOC%CUR AVG MIN MAX 12V%CUR AVG MIN MAX #charges #trips address ``` ## configuration of gspread for "python summary.py sheetupdate" @@ -419,39 +405,39 @@ The summary.py [standard output of the previous monitor.csv file](https://raw.gi output: ``` C:\Users\Rick\git\monitor>python summary.py - Period, date , info , odometer, delta km, +kWh, -kWh, km/kWh, kWh/100km, cost Euro, SOC%CUR,AVG,MIN,MAX, 12V%CUR,AVG,MIN,MAX, #charges, #trips, #moves -DAY , 2022-09-17, Sat , 17324.2, , 2.8, , , , , 58, 55, 55, 58, 91, 91, 91, 91, 1 , , -DAY , 2022-09-18, Sun , 17324.2, , 0.7, , , , , 59, 59, 59, 60, 91, 91, 91, 91, , , -WEEK , 2022-09-18, WK 37, 17324.2, , 3.5, , , , , 59, 59, 55, 60, 91, 91, 91, 91, 1 , , -TRIP , 2022-09-19, 15:00, 17324.3, 0.1, , , , , , 61, 60, 60, 61, 85, 90, 85, 91, , 1 , 1 -TRIP , 2022-09-19, 16:00, 17330.7, 6.4, , -1.4, , , , 59, 60, 59, 59, 86, 85, 86, 86, , 1 , 1 -DAY , 2022-09-19, Mon , 17330.7, 6.5, , , , , , 59, 60, 59, 61, 86, 88, 85, 91, , 2 , 2 -TRIP , 2022-09-20, 08:00, 17358.9, 28.2, , -4.2, 6.7, 14.9, 1.03, 53, 57, 53, 59, 91, 88, 88, 91, , 1 , 2 -TRIP , 2022-09-20, 15:30, 17371.5, 12.6, , -2.1, 6.0, 16.7, 0.52, 48, 50, 48, 51, 92, 90, 87, 92, , 1 , 3 -TRIP , 2022-09-20, 15:58, 17378.3, 6.8, , -0.7, , , , 47, 47, 47, 47, 91, 91, 91, 91, , 1 , 1 -DAY , 2022-09-20, Tue , 17378.3, 47.6, , -7.0, 6.8, 14.7, 1.72, 45, 48, 45, 59, 91, 91, 87, 92, , 3 , 6 -TRIP , 2022-09-21, 12:30, 17380.8, 2.5, 4.9, , , , , 52, 48, 46, 52, 92, 91, 91, 92, 1 , 1 , 1 -TRIP , 2022-09-21, 13:00, 17383.5, 2.7, , -0.7, , , , 51, 51, 51, 51, 91, 91, 91, 91, , 1 , 1 -DAY , 2022-09-21, Wed , 17383.5, 5.2, 18.2, -0.7, , , , 70, 63, 46, 70, 91, 91, 91, 92, 2 , 2 , 2 -DAY , 2022-09-22, Thu , 17383.5, , , , , , , 72, 72, 72, 72, 91, 91, 91, 91, 1 , , -TRIP , 2022-09-23, 11:21, 17385.4, 1.9, , -0.7, , , , 71, 71, 71, 71, 88, 89, 88, 88, , 1 , 1 -TRIP , 2022-09-23, 12:00, 17387.1, 1.7, 0.7, , , , , 72, 71, 72, 72, 87, 87, 87, 87, 1 , 1 , 1 -DAY , 2022-09-23, Fri , 17387.1, 3.6, 20.3, -0.7, , , , 100, 86, 71,100, 87, 87, 87, 88, 2 , 2 , 2 -TRIP , 2022-09-24, 09:57, 17390.8, 3.7, , -0.7, , , , 99,100, 99,100, 95, 94, 95, 95, , 1 , -TRIP , 2022-09-24, 13:21, 17589.2, 198.4, , -32.9, 6.0, 16.6, 8.09, 52, 80, 52, 98, 96, 96, 92, 98, , 1 , 6 -TRIP , 2022-09-24, 14:31, 17592.5, 3.3, , -0.7, , , , 51, 51, 51, 51, 94, 95, 94, 94, , 1 , 1 -TRIP , 2022-09-24, 15:23, 17597.3, 4.8, , -0.7, , , , 50, 51, 50, 51, 96, 94, 93, 96, , 1 , 2 -TRIP , 2022-09-24, 19:00, 17794.9, 197.6, , -31.5, 6.3, 15.9, 7.75, 5, 30, 5, 50, 97, 95, 94, 97, 1 , 1 , 6 -DAY , 2022-09-24, Sat , 17794.9, 407.8, 25.9, -66.5, 6.1, 16.3, 16.36, 42, 40, 5,100, 97, 96, 92, 98, 1 , 5 , 15 -DAY , 2022-09-25, Sun , 17794.9, , 5.6, , , , , 50, 50, 43, 50, 97, 97, 97, 97, , , -WEEK , 2022-09-25, WK 38, 17794.9, 470.7, 67.2, -73.5, 6.4, 15.6, 18.08, 50, 50, 5,100, 97, 97, 85, 98, 6 , 14 , 27 -MONTH , 2022-09-25, Sep , 17794.9, 470.7, 70.7, -73.5, 6.4, 15.6, 18.08, 50, 50, 5,100, 97, 97, 85, 98, 7 , 14 , 27 -YEAR , 2022-09-25, 2022 , 17794.9, 470.7, 70.7, -73.5, 6.4, 15.6, 18.08, 50, 50, 5,100, 97, 97, 85, 98, 7 , 14 , 27 -TRIPAVG , 2022-09-25, 14t , 17794.9, 33.6, 5.0, -5.2, 6.4, 15.6, 1.29, 50, 50, 5,100, 97, 97, 85, 98, 0.5, 1 , 1.9 -DAYAVG , 2022-09-25, 9d , 17794.9, 52.3, 7.9, -8.2, 6.4, 15.6, 2.01, 50, 50, 5,100, 97, 97, 85, 98, 0.8, 1.6, 3 -WEEKAVG , 2022-09-25, 9d , 17794.9, 366.1, 55.0, -57.2, 6.4, 15.6, 14.06, 50, 50, 5,100, 97, 97, 85, 98, 5.4, 10.9, 21 -MONTHAVG, 2022-09-25, 9d , 17794.9, 1590.8, 238.9, -248.4, 6.4, 15.6, 61.11, 50, 50, 5,100, 97, 97, 85, 98, 23.7, 47.3, 91.2 -YEARLY , 2022-09-25, 9d , 17794.9, 19089.5, 2867.3, -2980.8, 6.4, 15.6, 733.29, 50, 50, 5,100, 97, 97, 85, 98, 283.9, 567.8, 1095 + Period, date , info , odometer, delta km, +kWh, -kWh, km/kWh, kWh/100km, cost Euro, SOC%CUR,AVG,MIN,MAX, 12V%CUR,AVG,MIN,MAX, #charges, #trips +DAY , 2022-09-17, Sat , 17324.2, , 2.8, , , , , 58, 55, 55, 58, 91, 91, 91, 91, 1 , +DAY , 2022-09-18, Sun , 17324.2, , 0.7, , , , , 59, 59, 59, 60, 91, 91, 91, 91, , +WEEK , 2022-09-18, WK 37, 17324.2, , 3.5, , , , , 59, 59, 55, 60, 91, 91, 91, 91, 1 , +TRIP , 2022-09-19, 15:00, 17324.3, 0.1, , , , , , 61, 60, 60, 61, 85, 90, 85, 91, , 1 +TRIP , 2022-09-19, 16:00, 17330.7, 6.4, , -1.4, , , , 59, 60, 59, 59, 86, 85, 86, 86, , 1 +DAY , 2022-09-19, Mon , 17330.7, 6.5, , , , , , 59, 60, 59, 61, 86, 88, 85, 91, , 2 +TRIP , 2022-09-20, 08:00, 17358.9, 28.2, , -4.2, 6.7, 14.9, 1.03, 53, 57, 53, 59, 91, 88, 88, 91, , 1 +TRIP , 2022-09-20, 15:30, 17371.5, 12.6, , -2.1, 6.0, 16.7, 0.52, 48, 50, 48, 51, 92, 90, 87, 92, , 1 +TRIP , 2022-09-20, 15:58, 17378.3, 6.8, , -0.7, , , , 47, 47, 47, 47, 91, 91, 91, 91, , 1 +DAY , 2022-09-20, Tue , 17378.3, 47.6, , -7.0, 6.8, 14.7, 1.72, 45, 48, 45, 59, 91, 91, 87, 92, , 3 +TRIP , 2022-09-21, 12:30, 17380.8, 2.5, 4.9, , , , , 52, 48, 46, 52, 92, 91, 91, 92, 1 , 1 +TRIP , 2022-09-21, 13:00, 17383.5, 2.7, , -0.7, , , , 51, 51, 51, 51, 91, 91, 91, 91, , 1 +DAY , 2022-09-21, Wed , 17383.5, 5.2, 18.2, -0.7, , , , 70, 63, 46, 70, 91, 91, 91, 92, 2 , 2 +DAY , 2022-09-22, Thu , 17383.5, , , , , , , 72, 72, 72, 72, 91, 91, 91, 91, 1 , +TRIP , 2022-09-23, 11:21, 17385.4, 1.9, , -0.7, , , , 71, 71, 71, 71, 88, 89, 88, 88, , 1 +TRIP , 2022-09-23, 12:00, 17387.1, 1.7, 0.7, , , , , 72, 71, 72, 72, 87, 87, 87, 87, 1 , 1 +DAY , 2022-09-23, Fri , 17387.1, 3.6, 20.3, -0.7, , , , 100, 86, 71,100, 87, 87, 87, 88, 2 , 2 +TRIP , 2022-09-24, 09:57, 17390.8, 3.7, , -0.7, , , , 99,100, 99,100, 95, 94, 95, 95, , 1 +TRIP , 2022-09-24, 13:21, 17589.2, 198.4, , -32.9, 6.0, 16.6, 8.09, 52, 80, 52, 98, 96, 96, 92, 98, , 1 +TRIP , 2022-09-24, 14:31, 17592.5, 3.3, , -0.7, , , , 51, 51, 51, 51, 94, 95, 94, 94, , 1 +TRIP , 2022-09-24, 15:23, 17597.3, 4.8, , -0.7, , , , 50, 51, 50, 51, 96, 94, 93, 96, , 1 +TRIP , 2022-09-24, 19:00, 17794.9, 197.6, , -31.5, 6.3, 15.9, 7.75, 5, 30, 5, 50, 97, 95, 94, 97, 1 , 1 +DAY , 2022-09-24, Sat , 17794.9, 407.8, 25.9, -66.5, 6.1, 16.3, 16.36, 42, 40, 5,100, 97, 96, 92, 98, 1 , 5 +DAY , 2022-09-25, Sun , 17794.9, , 5.6, , , , , 50, 50, 43, 50, 97, 97, 97, 97, , +WEEK , 2022-09-25, WK 38, 17794.9, 470.7, 67.2, -73.5, 6.4, 15.6, 18.08, 50, 50, 5,100, 97, 97, 85, 98, 6 , 14 +MONTH , 2022-09-25, Sep , 17794.9, 470.7, 70.7, -73.5, 6.4, 15.6, 18.08, 50, 50, 5,100, 97, 97, 85, 98, 7 , 14 +YEAR , 2022-09-25, 2022 , 17794.9, 470.7, 70.7, -73.5, 6.4, 15.6, 18.08, 50, 50, 5,100, 97, 97, 85, 98, 7 , 14 +TRIPAVG , 2022-09-25, 14t , 17794.9, 33.6, 5.0, -5.2, 6.4, 15.6, 1.29, 50, 50, 5,100, 97, 97, 85, 98, 0.5, 1 +DAYAVG , 2022-09-25, 9d , 17794.9, 52.3, 7.9, -8.2, 6.4, 15.6, 2.01, 50, 50, 5,100, 97, 97, 85, 98, 0.8, 1.6 +WEEKAVG , 2022-09-25, 9d , 17794.9, 366.1, 55.0, -57.2, 6.4, 15.6, 14.06, 50, 50, 5,100, 97, 97, 85, 98, 5.4, 10.9 +MONTHAVG, 2022-09-25, 9d , 17794.9, 1590.8, 238.9, -248.4, 6.4, 15.6, 61.11, 50, 50, 5,100, 97, 97, 85, 98, 23.7, 47.3 +YEARLY , 2022-09-25, 9d , 17794.9, 19089.5, 2867.3, -2980.8, 6.4, 15.6, 733.29, 50, 50, 5,100, 97, 97, 85, 98, 283.9, 567.8 ``` - 2022-09-24 I did a trip from 100% SOC to 5% SOC (-66.5 kWh) @@ -482,93 +468,93 @@ Also the 12 Volt battery is shown and it has not become beneath 85%, with an ave Example output when filtering on DAY: ``` C:\Users\Rick\git\monitor>python summary.py day - Period, date , info , odometer, delta km, +kWh, -kWh, km/kWh, kWh/100km, cost Euro, SOC%CUR,AVG,MIN,MAX, 12V%CUR,AVG,MIN,MAX, #charges, #trips, #moves -DAY , 2022-09-17, Sat , 17324.2, , 2.8, , , , , 58, 55, 55, 58, 91, 91, 91, 91, 1 , , -DAY , 2022-09-18, Sun , 17324.2, , 0.7, , , , , 59, 59, 59, 60, 91, 91, 91, 91, , , -DAY , 2022-09-19, Mon , 17330.7, 6.5, , , , , , 59, 60, 59, 61, 86, 88, 85, 91, , 2 , 2 -DAY , 2022-09-20, Tue , 17378.3, 47.6, , -7.0, 6.8, 14.7, 1.72, 45, 48, 45, 59, 91, 91, 87, 92, , 3 , 6 -DAY , 2022-09-21, Wed , 17383.5, 5.2, 18.2, -0.7, , , , 70, 63, 46, 70, 91, 91, 91, 92, 2 , 2 , 2 -DAY , 2022-09-22, Thu , 17383.5, , , , , , , 72, 72, 72, 72, 91, 91, 91, 91, 1 , , -DAY , 2022-09-23, Fri , 17387.1, 3.6, 20.3, -0.7, , , , 100, 86, 71,100, 87, 87, 87, 88, 2 , 2 , 2 -DAY , 2022-09-24, Sat , 17794.9, 407.8, 25.9, -66.5, 6.1, 16.3, 16.36, 42, 40, 5,100, 97, 96, 92, 98, 1 , 5 , 15 -DAY , 2022-09-25, Sun , 17794.9, , 5.6, , , , , 50, 50, 43, 50, 97, 97, 97, 97, , , + Period, date , info , odometer, delta km, +kWh, -kWh, km/kWh, kWh/100km, cost Euro, SOC%CUR,AVG,MIN,MAX, 12V%CUR,AVG,MIN,MAX, #charges, #trips +DAY , 2022-09-17, Sat , 17324.2, , 2.8, , , , , 58, 55, 55, 58, 91, 91, 91, 91, 1 , +DAY , 2022-09-18, Sun , 17324.2, , 0.7, , , , , 59, 59, 59, 60, 91, 91, 91, 91, , +DAY , 2022-09-19, Mon , 17330.7, 6.5, , , , , , 59, 60, 59, 61, 86, 88, 85, 91, , 2 +DAY , 2022-09-20, Tue , 17378.3, 47.6, , -7.0, 6.8, 14.7, 1.72, 45, 48, 45, 59, 91, 91, 87, 92, , 3 +DAY , 2022-09-21, Wed , 17383.5, 5.2, 18.2, -0.7, , , , 70, 63, 46, 70, 91, 91, 91, 92, 2 , 2 +DAY , 2022-09-22, Thu , 17383.5, , , , , , , 72, 72, 72, 72, 91, 91, 91, 91, 1 , +DAY , 2022-09-23, Fri , 17387.1, 3.6, 20.3, -0.7, , , , 100, 86, 71,100, 87, 87, 87, 88, 2 , 2 +DAY , 2022-09-24, Sat , 17794.9, 407.8, 25.9, -66.5, 6.1, 16.3, 16.36, 42, 40, 5,100, 97, 96, 92, 98, 1 , 5 +DAY , 2022-09-25, Sun , 17794.9, , 5.6, , , , , 50, 50, 43, 50, 97, 97, 97, 97, , ``` Example output when filtering on TRIP: ``` C:\Users\Rick\git\monitor>python summary.py trip -Period, date , info , odometer, delta km, +kWh, -kWh, km/kWh, kWh/100km, cost Euro, SOC%CUR,AVG,MIN,MAX, 12V%CUR,AVG,MIN,MAX, #charges, #drives, #moves -TRIP , 2022-09-19, 15:00, 17324.3, 0.1, , , , , , 61, 60, 60, 61, 85, 90, 85, 91, , 1, 1 -TRIP , 2022-09-19, 16:00, 17330.7, 6.4, , -1.4, , , , 59, 60, 59, 59, 86, 85, 86, 86, , 1, 1 -TRIP , 2022-09-20, 08:00, 17358.9, 28.2, , -4.2, 6.7, 14.9, 1.03, 53, 57, 53, 59, 91, 88, 88, 91, , 1, 2 -TRIP , 2022-09-20, 15:30, 17371.5, 12.6, , -2.1, 6.0, 16.7, 0.52, 48, 50, 48, 51, 92, 90, 87, 92, , 1, 3 -TRIP , 2022-09-20, 15:58, 17378.3, 6.8, , -0.7, , , , 47, 47, 47, 47, 91, 91, 91, 91, , 1, 1 -TRIP , 2022-09-21, 12:30, 17380.8, 2.5, 4.9, , , , , 52, 48, 46, 52, 92, 91, 91, 92, 1, 1, 1 -TRIP , 2022-09-21, 13:00, 17383.5, 2.7, , -0.7, , , , 51, 51, 51, 51, 91, 91, 91, 91, , 1, 1 -TRIP , 2022-09-23, 11:21, 17385.4, 1.9, , -0.7, , , , 71, 71, 71, 71, 88, 89, 88, 88, , 1, 1 -TRIP , 2022-09-23, 12:00, 17387.1, 1.7, 0.7, , , , , 72, 71, 72, 72, 87, 87, 87, 87, 1, 1, 1 -TRIP , 2022-09-24, 09:57, 17390.8, 3.7, , -0.7, , , , 99,100, 99,100, 95, 94, 95, 95, , 1, -TRIP , 2022-09-24, 13:21, 17589.2, 198.4, , -32.9, 6.0, 16.6, 8.09, 52, 80, 52, 98, 96, 96, 92, 98, , 1, 6 -TRIP , 2022-09-24, 14:31, 17592.5, 3.3, , -0.7, , , , 51, 51, 51, 51, 94, 95, 94, 94, , 1, 1 -TRIP , 2022-09-24, 15:23, 17597.3, 4.8, , -0.7, , , , 50, 51, 50, 51, 96, 94, 93, 96, , 1, 2 -TRIP , 2022-09-24, 19:00, 17794.9, 197.6, , -31.5, 6.3, 15.9, 7.75, 5, 30, 5, 50, 97, 95, 94, 97, 1, 1, 6 +Period, date , info , odometer, delta km, +kWh, -kWh, km/kWh, kWh/100km, cost Euro, SOC%CUR,AVG,MIN,MAX, 12V%CUR,AVG,MIN,MAX, #charges, #drives +TRIP , 2022-09-19, 15:00, 17324.3, 0.1, , , , , , 61, 60, 60, 61, 85, 90, 85, 91, , 1 +TRIP , 2022-09-19, 16:00, 17330.7, 6.4, , -1.4, , , , 59, 60, 59, 59, 86, 85, 86, 86, , 1 +TRIP , 2022-09-20, 08:00, 17358.9, 28.2, , -4.2, 6.7, 14.9, 1.03, 53, 57, 53, 59, 91, 88, 88, 91, , 1 +TRIP , 2022-09-20, 15:30, 17371.5, 12.6, , -2.1, 6.0, 16.7, 0.52, 48, 50, 48, 51, 92, 90, 87, 92, , 1 +TRIP , 2022-09-20, 15:58, 17378.3, 6.8, , -0.7, , , , 47, 47, 47, 47, 91, 91, 91, 91, , 1 +TRIP , 2022-09-21, 12:30, 17380.8, 2.5, 4.9, , , , , 52, 48, 46, 52, 92, 91, 91, 92, 1, 1 +TRIP , 2022-09-21, 13:00, 17383.5, 2.7, , -0.7, , , , 51, 51, 51, 51, 91, 91, 91, 91, , 1 +TRIP , 2022-09-23, 11:21, 17385.4, 1.9, , -0.7, , , , 71, 71, 71, 71, 88, 89, 88, 88, , 1 +TRIP , 2022-09-23, 12:00, 17387.1, 1.7, 0.7, , , , , 72, 71, 72, 72, 87, 87, 87, 87, 1, 1 +TRIP , 2022-09-24, 09:57, 17390.8, 3.7, , -0.7, , , , 99,100, 99,100, 95, 94, 95, 95, , 1 +TRIP , 2022-09-24, 13:21, 17589.2, 198.4, , -32.9, 6.0, 16.6, 8.09, 52, 80, 52, 98, 96, 96, 92, 98, , 1 +TRIP , 2022-09-24, 14:31, 17592.5, 3.3, , -0.7, , , , 51, 51, 51, 51, 94, 95, 94, 94, , 1 +TRIP , 2022-09-24, 15:23, 17597.3, 4.8, , -0.7, , , , 50, 51, 50, 51, 96, 94, 93, 96, , 1 +TRIP , 2022-09-24, 19:00, 17794.9, 197.6, , -31.5, 6.3, 15.9, 7.75, 5, 30, 5, 50, 97, 95, 94, 97, 1, 1 ``` Example output when filtering on DAY and TRIP: ``` C:\Users\Rick\git\monitor>python summary.py day trip - Period, date , info , odometer, delta km, +kWh, -kWh, km/kWh, kWh/100km, cost Euro, SOC%CUR,AVG,MIN,MAX, 12V%CUR,AVG,MIN,MAX, #charges, #trips, #moves -DAY , 2022-09-17, Sat , 17324.2, , 2.8, , , , , 58, 55, 55, 58, 91, 91, 91, 91, 1 , , -DAY , 2022-09-18, Sun , 17324.2, , 0.7, , , , , 59, 59, 59, 60, 91, 91, 91, 91, , , -TRIP , 2022-09-19, 15:00, 17324.3, 0.1, , , , , , 61, 60, 60, 61, 85, 90, 85, 91, , 1 , 1 -TRIP , 2022-09-19, 16:00, 17330.7, 6.4, , -1.4, , , , 59, 60, 59, 59, 86, 85, 86, 86, , 1 , 1 -DAY , 2022-09-19, Mon , 17330.7, 6.5, , , , , , 59, 60, 59, 61, 86, 88, 85, 91, , 2 , 2 -TRIP , 2022-09-20, 08:00, 17358.9, 28.2, , -4.2, 6.7, 14.9, 1.03, 53, 57, 53, 59, 91, 88, 88, 91, , 1 , 2 -TRIP , 2022-09-20, 15:30, 17371.5, 12.6, , -2.1, 6.0, 16.7, 0.52, 48, 50, 48, 51, 92, 90, 87, 92, , 1 , 3 -TRIP , 2022-09-20, 15:58, 17378.3, 6.8, , -0.7, , , , 47, 47, 47, 47, 91, 91, 91, 91, , 1 , 1 -DAY , 2022-09-20, Tue , 17378.3, 47.6, , -7.0, 6.8, 14.7, 1.72, 45, 48, 45, 59, 91, 91, 87, 92, , 3 , 6 -TRIP , 2022-09-21, 12:30, 17380.8, 2.5, 4.9, , , , , 52, 48, 46, 52, 92, 91, 91, 92, 1 , 1 , 1 -TRIP , 2022-09-21, 13:00, 17383.5, 2.7, , -0.7, , , , 51, 51, 51, 51, 91, 91, 91, 91, , 1 , 1 -DAY , 2022-09-21, Wed , 17383.5, 5.2, 18.2, -0.7, , , , 70, 63, 46, 70, 91, 91, 91, 92, 2 , 2 , 2 -DAY , 2022-09-22, Thu , 17383.5, , , , , , , 72, 72, 72, 72, 91, 91, 91, 91, 1 , , -TRIP , 2022-09-23, 11:21, 17385.4, 1.9, , -0.7, , , , 71, 71, 71, 71, 88, 89, 88, 88, , 1 , 1 -TRIP , 2022-09-23, 12:00, 17387.1, 1.7, 0.7, , , , , 72, 71, 72, 72, 87, 87, 87, 87, 1 , 1 , 1 -DAY , 2022-09-23, Fri , 17387.1, 3.6, 20.3, -0.7, , , , 100, 86, 71,100, 87, 87, 87, 88, 2 , 2 , 2 -TRIP , 2022-09-24, 09:57, 17390.8, 3.7, , -0.7, , , , 99,100, 99,100, 95, 94, 95, 95, , 1 , -TRIP , 2022-09-24, 13:21, 17589.2, 198.4, , -32.9, 6.0, 16.6, 8.09, 52, 80, 52, 98, 96, 96, 92, 98, , 1 , 6 -TRIP , 2022-09-24, 14:31, 17592.5, 3.3, , -0.7, , , , 51, 51, 51, 51, 94, 95, 94, 94, , 1 , 1 -TRIP , 2022-09-24, 15:23, 17597.3, 4.8, , -0.7, , , , 50, 51, 50, 51, 96, 94, 93, 96, , 1 , 2 -TRIP , 2022-09-24, 19:00, 17794.9, 197.6, , -31.5, 6.3, 15.9, 7.75, 5, 30, 5, 50, 97, 95, 94, 97, 1 , 1 , 6 -DAY , 2022-09-24, Sat , 17794.9, 407.8, 25.9, -66.5, 6.1, 16.3, 16.36, 42, 40, 5,100, 97, 96, 92, 98, 1 , 5 , 15 -DAY , 2022-09-25, Sun , 17794.9, , 5.6, , , , , 50, 50, 43, 50, 97, 97, 97, 97, , , + Period, date , info , odometer, delta km, +kWh, -kWh, km/kWh, kWh/100km, cost Euro, SOC%CUR,AVG,MIN,MAX, 12V%CUR,AVG,MIN,MAX, #charges, #trips +DAY , 2022-09-17, Sat , 17324.2, , 2.8, , , , , 58, 55, 55, 58, 91, 91, 91, 91, 1 , +DAY , 2022-09-18, Sun , 17324.2, , 0.7, , , , , 59, 59, 59, 60, 91, 91, 91, 91, , +TRIP , 2022-09-19, 15:00, 17324.3, 0.1, , , , , , 61, 60, 60, 61, 85, 90, 85, 91, , 1 +TRIP , 2022-09-19, 16:00, 17330.7, 6.4, , -1.4, , , , 59, 60, 59, 59, 86, 85, 86, 86, , 1 +DAY , 2022-09-19, Mon , 17330.7, 6.5, , , , , , 59, 60, 59, 61, 86, 88, 85, 91, , 2 +TRIP , 2022-09-20, 08:00, 17358.9, 28.2, , -4.2, 6.7, 14.9, 1.03, 53, 57, 53, 59, 91, 88, 88, 91, , 1 +TRIP , 2022-09-20, 15:30, 17371.5, 12.6, , -2.1, 6.0, 16.7, 0.52, 48, 50, 48, 51, 92, 90, 87, 92, , 1 +TRIP , 2022-09-20, 15:58, 17378.3, 6.8, , -0.7, , , , 47, 47, 47, 47, 91, 91, 91, 91, , 1 +DAY , 2022-09-20, Tue , 17378.3, 47.6, , -7.0, 6.8, 14.7, 1.72, 45, 48, 45, 59, 91, 91, 87, 92, , 3 +TRIP , 2022-09-21, 12:30, 17380.8, 2.5, 4.9, , , , , 52, 48, 46, 52, 92, 91, 91, 92, 1 , 1 +TRIP , 2022-09-21, 13:00, 17383.5, 2.7, , -0.7, , , , 51, 51, 51, 51, 91, 91, 91, 91, , 1 +DAY , 2022-09-21, Wed , 17383.5, 5.2, 18.2, -0.7, , , , 70, 63, 46, 70, 91, 91, 91, 92, 2 , 2 +DAY , 2022-09-22, Thu , 17383.5, , , , , , , 72, 72, 72, 72, 91, 91, 91, 91, 1 , +TRIP , 2022-09-23, 11:21, 17385.4, 1.9, , -0.7, , , , 71, 71, 71, 71, 88, 89, 88, 88, , 1 +TRIP , 2022-09-23, 12:00, 17387.1, 1.7, 0.7, , , , , 72, 71, 72, 72, 87, 87, 87, 87, 1 , 1 +DAY , 2022-09-23, Fri , 17387.1, 3.6, 20.3, -0.7, , , , 100, 86, 71,100, 87, 87, 87, 88, 2 , 2 +TRIP , 2022-09-24, 09:57, 17390.8, 3.7, , -0.7, , , , 99,100, 99,100, 95, 94, 95, 95, , 1 +TRIP , 2022-09-24, 13:21, 17589.2, 198.4, , -32.9, 6.0, 16.6, 8.09, 52, 80, 52, 98, 96, 96, 92, 98, , 1 +TRIP , 2022-09-24, 14:31, 17592.5, 3.3, , -0.7, , , , 51, 51, 51, 51, 94, 95, 94, 94, , 1 +TRIP , 2022-09-24, 15:23, 17597.3, 4.8, , -0.7, , , , 50, 51, 50, 51, 96, 94, 93, 96, , 1 +TRIP , 2022-09-24, 19:00, 17794.9, 197.6, , -31.5, 6.3, 15.9, 7.75, 5, 30, 5, 50, 97, 95, 94, 97, 1 , 1 +DAY , 2022-09-24, Sat , 17794.9, 407.8, 25.9, -66.5, 6.1, 16.3, 16.36, 42, 40, 5,100, 97, 96, 92, 98, 1 , 5 +DAY , 2022-09-25, Sun , 17794.9, , 5.6, , , , , 50, 50, 43, 50, 97, 97, 97, 97, , ``` Example output when filtering on WEEK: ``` C:\Users\Rick\git\monitor>python summary.py week - Period, date , info , odometer, delta km, +kWh, -kWh, km/kWh, kWh/100km, cost Euro, SOC%CUR,AVG,MIN,MAX, 12V%CUR,AVG,MIN,MAX, #charges, #trips, #moves -WEEK , 2022-09-18, WK 37, 17324.2, , 3.5, , , , , 59, 59, 55, 60, 91, 91, 91, 91, 1 , , -WEEK , 2022-09-25, WK 38, 17794.9, 470.7, 67.2, -73.5, 6.4, 15.6, 18.08, 50, 50, 5,100, 97, 97, 85, 98, 6 , 14 , 27 + Period, date , info , odometer, delta km, +kWh, -kWh, km/kWh, kWh/100km, cost Euro, SOC%CUR,AVG,MIN,MAX, 12V%CUR,AVG,MIN,MAX, #charges, #trips +WEEK , 2022-09-18, WK 37, 17324.2, , 3.5, , , , , 59, 59, 55, 60, 91, 91, 91, 91, 1 , +WEEK , 2022-09-25, WK 38, 17794.9, 470.7, 67.2, -73.5, 6.4, 15.6, 18.08, 50, 50, 5,100, 97, 97, 85, 98, 6 , 14 ``` Example output when filtering on MONTH: ``` C:\Users\Rick\git\monitor>python summary.py month - Period, date , info , odometer, delta km, +kWh, -kWh, km/kWh, kWh/100km, cost Euro, SOC%CUR,AVG,MIN,MAX, 12V%CUR,AVG,MIN,MAX, #charges, #trips, #moves -MONTH , 2022-09-25, Sep , 17794.9, 470.7, 70.7, -73.5, 6.4, 15.6, 18.08, 50, 50, 5,100, 97, 97, 85, 98, 7 , 14 , 27 + Period, date , info , odometer, delta km, +kWh, -kWh, km/kWh, kWh/100km, cost Euro, SOC%CUR,AVG,MIN,MAX, 12V%CUR,AVG,MIN,MAX, #charges, #trips +MONTH , 2022-09-25, Sep , 17794.9, 470.7, 70.7, -73.5, 6.4, 15.6, 18.08, 50, 50, 5,100, 97, 97, 85, 98, 7 , 14 ``` Example output when filtering on YEAR: ``` C:\Users\Rick\git\monitor>python summary.py year - Period, date , info , odometer, delta km, +kWh, -kWh, km/kWh, kWh/100km, cost Euro, SOC%CUR,AVG,MIN,MAX, 12V%CUR,AVG,MIN,MAX, #charges, #trips, #moves -YEAR , 2022-09-25, 2022 , 17794.9, 470.7, 70.7, -73.5, 6.4, 15.6, 18.08, 50, 50, 5,100, 97, 97, 85, 98, 7 , 14 , 27 -TRIPAVG , 2022-09-25, 14t , 17794.9, 33.6, 5.0, -5.2, 6.4, 15.6, 1.29, 50, 50, 5,100, 97, 97, 85, 98, 0.5, 1 , 1.9 -DAYAVG , 2022-09-25, 9d , 17794.9, 52.3, 7.9, -8.2, 6.4, 15.6, 2.01, 50, 50, 5,100, 97, 97, 85, 98, 0.8, 1.6, 3 -WEEKAVG , 2022-09-25, 9d , 17794.9, 366.1, 55.0, -57.2, 6.4, 15.6, 14.06, 50, 50, 5,100, 97, 97, 85, 98, 5.4, 10.9, 21 -MONTHAVG, 2022-09-25, 9d , 17794.9, 1590.8, 238.9, -248.4, 6.4, 15.6, 61.11, 50, 50, 5,100, 97, 97, 85, 98, 23.7, 47.3, 91.2 -YEARLY , 2022-09-25, 9d , 17794.9, 19089.5, 2867.3, -2980.8, 6.4, 15.6, 733.29, 50, 50, 5,100, 97, 97, 85, 98, 283.9, 567.8, 1095 + Period, date , info , odometer, delta km, +kWh, -kWh, km/kWh, kWh/100km, cost Euro, SOC%CUR,AVG,MIN,MAX, 12V%CUR,AVG,MIN,MAX, #charges, #trips +YEAR , 2022-09-25, 2022 , 17794.9, 470.7, 70.7, -73.5, 6.4, 15.6, 18.08, 50, 50, 5,100, 97, 97, 85, 98, 7 , 14 +TRIPAVG , 2022-09-25, 14t , 17794.9, 33.6, 5.0, -5.2, 6.4, 15.6, 1.29, 50, 50, 5,100, 97, 97, 85, 98, 0.5, 1 +DAYAVG , 2022-09-25, 9d , 17794.9, 52.3, 7.9, -8.2, 6.4, 15.6, 2.01, 50, 50, 5,100, 97, 97, 85, 98, 0.8, 1.6 +WEEKAVG , 2022-09-25, 9d , 17794.9, 366.1, 55.0, -57.2, 6.4, 15.6, 14.06, 50, 50, 5,100, 97, 97, 85, 98, 5.4, 10.9 +MONTHAVG, 2022-09-25, 9d , 17794.9, 1590.8, 238.9, -248.4, 6.4, 15.6, 61.11, 50, 50, 5,100, 97, 97, 85, 98, 23.7, 47.3 +YEARLY , 2022-09-25, 9d , 17794.9, 19089.5, 2867.3, -2980.8, 6.4, 15.6, 733.29, 50, 50, 5,100, 97, 97, 85, 98, 283.9, 567.8 ``` Note that you see also a prediction (YEARLY) how many kilometers (or miles) you will drive, based on the 9 days of capture. @@ -578,81 +564,25 @@ Averages for DAY, WEEK, MONTH are shown, based on these 9 days. And also the ave Example output when showing everything except TRIP: ``` C:\Users\Rick\git\monitor>python summary.py -trip - Period, date , info , odometer, delta km, +kWh, -kWh, km/kWh, kWh/100km, cost Euro, SOC%CUR,AVG,MIN,MAX, 12V%CUR,AVG,MIN,MAX, #charges, #trips, #moves -DAY , 2022-09-17, Sat , 17324.2, , 2.8, , , , , 58, 55, 55, 58, 91, 91, 91, 91, 1 , , -DAY , 2022-09-18, Sun , 17324.2, , 0.7, , , , , 59, 59, 59, 60, 91, 91, 91, 91, , , -WEEK , 2022-09-18, WK 37, 17324.2, , 3.5, , , , , 59, 59, 55, 60, 91, 91, 91, 91, 1 , , -DAY , 2022-09-19, Mon , 17330.7, 6.5, , , , , , 59, 60, 59, 61, 86, 88, 85, 91, , 2 , 2 -DAY , 2022-09-20, Tue , 17378.3, 47.6, , -7.0, 6.8, 14.7, 1.72, 45, 48, 45, 59, 91, 91, 87, 92, , 3 , 6 -DAY , 2022-09-21, Wed , 17383.5, 5.2, 18.2, -0.7, , , , 70, 63, 46, 70, 91, 91, 91, 92, 2 , 2 , 2 -DAY , 2022-09-22, Thu , 17383.5, , , , , , , 72, 72, 72, 72, 91, 91, 91, 91, 1 , , -DAY , 2022-09-23, Fri , 17387.1, 3.6, 20.3, -0.7, , , , 100, 86, 71,100, 87, 87, 87, 88, 2 , 2 , 2 -DAY , 2022-09-24, Sat , 17794.9, 407.8, 25.9, -66.5, 6.1, 16.3, 16.36, 42, 40, 5,100, 97, 96, 92, 98, 1 , 5 , 15 -DAY , 2022-09-25, Sun , 17794.9, , 5.6, , , , , 50, 50, 43, 50, 97, 97, 97, 97, , , -WEEK , 2022-09-25, WK 38, 17794.9, 470.7, 67.2, -73.5, 6.4, 15.6, 18.08, 50, 50, 5,100, 97, 97, 85, 98, 6 , 14 , 27 -MONTH , 2022-09-25, Sep , 17794.9, 470.7, 70.7, -73.5, 6.4, 15.6, 18.08, 50, 50, 5,100, 97, 97, 85, 98, 7 , 14 , 27 -YEAR , 2022-09-25, 2022 , 17794.9, 470.7, 70.7, -73.5, 6.4, 15.6, 18.08, 50, 50, 5,100, 97, 97, 85, 98, 7 , 14 , 27 -TRIPAVG , 2022-09-25, 14t , 17794.9, 33.6, 5.0, -5.2, 6.4, 15.6, 1.29, 50, 50, 5,100, 97, 97, 85, 98, 0.5, 1 , 1.9 -DAYAVG , 2022-09-25, 9d , 17794.9, 52.3, 7.9, -8.2, 6.4, 15.6, 2.01, 50, 50, 5,100, 97, 97, 85, 98, 0.8, 1.6, 3 -WEEKAVG , 2022-09-25, 9d , 17794.9, 366.1, 55.0, -57.2, 6.4, 15.6, 14.06, 50, 50, 5,100, 97, 97, 85, 98, 5.4, 10.9, 21 -MONTHAVG, 2022-09-25, 9d , 17794.9, 1590.8, 238.9, -248.4, 6.4, 15.6, 61.11, 50, 50, 5,100, 97, 97, 85, 98, 23.7, 47.3, 91.2 -YEARLY , 2022-09-25, 9d , 17794.9, 19089.5, 2867.3, -2980.8, 6.4, 15.6, 733.29, 50, 50, 5,100, 97, 97, 85, 98, 283.9, 567.8, 1095 -``` - -Example output when showing day, trip, move and address: -``` -C:\Users\Rick\git\monitor>python summary.py day trip move address - Period, date , info , odometer, delta km, +kWh, -kWh, km/kWh, kWh/100km, cost Euro, SOC%CUR,AVG,MIN,MAX, 12V%CUR,AVG,MIN,MAX, #charges, #trips, #moves, Address -DAY , 2022-09-17, Sat , 17324.2, , 2.8, , , , , 58, 55, 55, 58, 91, 91, 91, 91, 1 , , , -DAY , 2022-09-18, Sun , 17324.2, , 0.7, , , , , 59, 59, 59, 60, 91, 91, 91, 91, , , , -MOVE , 2022-09-19, 15:00, , 0.4, , , , , , 61, 61, 61, 61, 85, 88, 85, 85, , 1 , 1 , "Statenlaan, Drunen, Heusden, Noord-Brabant, Nederland, 5152 SG, Nederland" -TRIP , 2022-09-19, 15:00, 17324.3, 0.1, , , , , , 61, 60, 60, 61, 85, 90, 85, 91, , 1 , 1 , "Statenlaan, Drunen, Heusden, Noord-Brabant, Nederland, 5152 SG, Nederland" -MOVE , 2022-09-19, 16:00, , 0.4, , -1.4, , , , 59, 60, 59, 59, 86, 85, 86, 86, , 1 , 1 , "26, Keniaring, Drunen, Heusden, Noord-Brabant, Nederland, 5152 MX, Nederland" -TRIP , 2022-09-19, 16:00, 17330.7, 6.4, , -1.4, , , , 59, 60, 59, 59, 86, 85, 86, 86, , 1 , 1 , "26, Keniaring, Drunen, Heusden, Noord-Brabant, Nederland, 5152 MX, Nederland" -DAY , 2022-09-19, Mon , 17330.7, 6.5, , , , , , 59, 60, 59, 61, 86, 88, 85, 91, , 2 , 2 , -MOVE , 2022-09-20, 07:00, , 2.3, , , , , , 59, 59, 59, 59, 88, 87, 88, 88, , , 1 , "Akkerlaan, Bloemenoord, Waalwijk, Noord-Brabant, Nederland, 5143 ND, Nederland" -MOVE , 2022-09-20, 08:00, , 2.3, , -4.2, 0.5, 182.6, 1.03, 53, 56, 53, 53, 91, 89, 91, 91, , 1 , 1 , "26, Keniaring, Drunen, Heusden, Noord-Brabant, Nederland, 5152 MX, Nederland" -TRIP , 2022-09-20, 08:00, 17358.9, 28.2, , -4.2, 6.7, 14.9, 1.03, 53, 57, 53, 59, 91, 88, 88, 91, , 1 , 2 , "26, Keniaring, Drunen, Heusden, Noord-Brabant, Nederland, 5152 MX, Nederland" -MOVE , 2022-09-20, 14:30, , 1.3, , -0.7, , , , 50, 50, 50, 50, 87, 89, 87, 87, , , 1 , "18, Leliestraat, Drunen, Heusden, Noord-Brabant, Nederland, 5151 TP, Nederland" -MOVE , 2022-09-20, 15:00, , 4.0, , -0.7, , , , 49, 49, 49, 49, 91, 89, 91, 91, , , 1 , "Desso Tarkett, 15, Taxandriaweg, Laageinde, Waalwijk, Noord-Brabant, Nederland, 5142 PA, Nederland" -MOVE , 2022-09-20, 15:30, , 2.2, , -0.7, , , , 48, 48, 48, 48, 92, 91, 92, 92, , 1 , 1 , "29b, Westeinde, Besoijen, Waalwijk, Noord-Brabant, Nederland, 5141 AA, Nederland" -TRIP , 2022-09-20, 15:30, 17371.5, 12.6, , -2.1, 6.0, 16.7, 0.52, 48, 50, 48, 51, 92, 90, 87, 92, , 1 , 3 , "29b, Westeinde, Besoijen, Waalwijk, Noord-Brabant, Nederland, 5141 AA, Nederland" -MOVE , 2022-09-20, 15:58, , 5.4, , -0.7, , , , 47, 47, 47, 47, 91, 91, 91, 91, , 1 , 1 , "26, Keniaring, Drunen, Heusden, Noord-Brabant, Nederland, 5152 MX, Nederland" -TRIP , 2022-09-20, 15:58, 17378.3, 6.8, , -0.7, , , , 47, 47, 47, 47, 91, 91, 91, 91, , 1 , 1 , "26, Keniaring, Drunen, Heusden, Noord-Brabant, Nederland, 5152 MX, Nederland" -DAY , 2022-09-20, Tue , 17378.3, 47.6, , -7.0, 6.8, 14.7, 1.72, 45, 48, 45, 59, 91, 91, 87, 92, , 3 , 6 , -MOVE , 2022-09-21, 12:30, , 1.3, 0.7, , , , , 52, 51, 52, 52, 92, 91, 92, 92, , 1 , 1 , "18, Leliestraat, Drunen, Heusden, Noord-Brabant, Nederland, 5151 TP, Nederland" -TRIP , 2022-09-21, 12:30, 17380.8, 2.5, 4.9, , , , , 52, 48, 46, 52, 92, 91, 91, 92, 1 , 1 , 1 , "18, Leliestraat, Drunen, Heusden, Noord-Brabant, Nederland, 5151 TP, Nederland" -MOVE , 2022-09-21, 13:00, , 1.3, , -0.7, , , , 51, 51, 51, 51, 91, 91, 91, 91, , 1 , 1 , "26, Keniaring, Drunen, Heusden, Noord-Brabant, Nederland, 5152 MX, Nederland" -TRIP , 2022-09-21, 13:00, 17383.5, 2.7, , -0.7, , , , 51, 51, 51, 51, 91, 91, 91, 91, , 1 , 1 , "26, Keniaring, Drunen, Heusden, Noord-Brabant, Nederland, 5152 MX, Nederland" -DAY , 2022-09-21, Wed , 17383.5, 5.2, 18.2, -0.7, , , , 70, 63, 46, 70, 91, 91, 91, 92, 2 , 2 , 2 , -DAY , 2022-09-22, Thu , 17383.5, , , , , , , 72, 72, 72, 72, 91, 91, 91, 91, 1 , , , -MOVE , 2022-09-23, 11:21, , 0.6, , -0.7, , , , 71, 71, 71, 71, 88, 89, 88, 88, , 1 , 1 , "Jumbo Aalbersestraat, 5, Aalbersestraat, Drunen, Heusden, Noord-Brabant, Nederland, 5151 EE, Nederland" -TRIP , 2022-09-23, 11:21, 17385.4, 1.9, , -0.7, , , , 71, 71, 71, 71, 88, 89, 88, 88, , 1 , 1 , "Jumbo Aalbersestraat, 5, Aalbersestraat, Drunen, Heusden, Noord-Brabant, Nederland, 5151 EE, Nederland" -MOVE , 2022-09-23, 12:00, , 0.6, 0.7, , , , , 72, 71, 72, 72, 87, 87, 87, 87, 1 , 1 , 1 , "26, Keniaring, Drunen, Heusden, Noord-Brabant, Nederland, 5152 MX, Nederland" -TRIP , 2022-09-23, 12:00, 17387.1, 1.7, 0.7, , , , , 72, 71, 72, 72, 87, 87, 87, 87, 1 , 1 , 1 , "26, Keniaring, Drunen, Heusden, Noord-Brabant, Nederland, 5152 MX, Nederland" -DAY , 2022-09-23, Fri , 17387.1, 3.6, 20.3, -0.7, , , , 100, 86, 71,100, 87, 87, 87, 88, 2 , 2 , 2 , -TRIP , 2022-09-24, 09:57, 17390.8, 3.7, , -0.7, , , , 99,100, 99,100, 95, 94, 95, 95, , 1 , , "26, Keniaring, Drunen, Heusden, Noord-Brabant, Nederland, 5152 MX, Nederland" -MOVE , 2022-09-24, 11:00, , 0.9, , -0.7, , , , 98, 98, 98, 98, 92, 93, 92, 92, , , 1 , "140, Torenstraat, Drunen, Heusden, Noord-Brabant, Nederland, 5151 JN, Nederland" -MOVE , 2022-09-24, 11:30, , 23.8, , -4.9, 4.9, 20.6, 1.21, 91, 94, 91, 91, 97, 94, 97, 97, , , 1 , "Rijksweg A2, Enspijk, West Betuwe, Gelderland, Nederland, 4153 RN, Nederland" -MOVE , 2022-09-24, 12:00, , 41.6, , -7.0, 5.9, 16.8, 1.72, 81, 86, 81, 81, 98, 97, 98, 98, , , 1 , "Rijksweg A27, Eemnes, Utrecht, Nederland, 3755 AS, Nederland" -MOVE , 2022-09-24, 12:30, , 40.7, , -8.4, 4.8, 20.6, 2.07, 69, 75, 69, 69, 98, 98, 98, 98, , , 1 , "Rijksweg A6, Lelystad, Flevoland, Nederland, 8221 RD, Nederland" -MOVE , 2022-09-24, 13:00, , 39.1, , -8.4, 4.7, 21.5, 2.07, 57, 63, 57, 57, 98, 98, 98, 98, , , 1 , "A6, Oldeouwer, De Fryske Marren, Fryslân, Nederland, 8516 DD, Nederland" -MOVE , 2022-09-24, 13:21, , 16.4, , -3.5, 4.7, 21.3, 0.86, 52, 54, 52, 52, 96, 97, 96, 96, , 1 , 1 , "17-101, Dekamalaan, Sneek, Súdwest-Fryslân, Fryslân, Nederland, 8604 ZG, Nederland" -TRIP , 2022-09-24, 13:21, 17589.2, 198.4, , -32.9, 6.0, 16.6, 8.09, 52, 80, 52, 98, 96, 96, 92, 98, , 1 , 6 , "17-101, Dekamalaan, Sneek, Súdwest-Fryslân, Fryslân, Nederland, 8604 ZG, Nederland" -MOVE , 2022-09-24, 14:31, , 2.2, , -0.7, , , , 51, 51, 51, 51, 94, 95, 94, 94, , 1 , 1 , "Van der Valk Hotel Sneek, 1, Burgemeester Rasterhofflaan, Houkesloot, Sneek, Súdwest-Fryslân, Fryslân, Nederland, 8606 KZ, Nederland" -TRIP , 2022-09-24, 14:31, 17592.5, 3.3, , -0.7, , , , 51, 51, 51, 51, 94, 95, 94, 94, , 1 , 1 , "Van der Valk Hotel Sneek, 1, Burgemeester Rasterhofflaan, Houkesloot, Sneek, Súdwest-Fryslân, Fryslân, Nederland, 8606 KZ, Nederland" -MOVE , 2022-09-24, 15:00, , 1.6, , , , , , 51, 51, 51, 51, 93, 93, 93, 93, , , 1 , "Stadsrondweg-Oost, Houkesloot, Sneek, Súdwest-Fryslân, Fryslân, Nederland, 8604 GC, Nederland" -MOVE , 2022-09-24, 15:23, , 0.7, , -0.7, , , , 50, 50, 50, 50, 96, 94, 96, 96, , 1 , 1 , "17-101, Dekamalaan, Sneek, Súdwest-Fryslân, Fryslân, Nederland, 8604 ZG, Nederland" -TRIP , 2022-09-24, 15:23, 17597.3, 4.8, , -0.7, , , , 50, 51, 50, 51, 96, 94, 93, 96, , 1 , 2 , "17-101, Dekamalaan, Sneek, Súdwest-Fryslân, Fryslân, Nederland, 8604 ZG, Nederland" -MOVE , 2022-09-24, 16:30, , 0.2, , , , , , 50, 50, 50, 50, 94, 95, 94, 94, , , 1 , "10, Groenedijk, Sneek, Súdwest-Fryslân, Fryslân, Nederland, 8604 AB, Nederland" -MOVE , 2022-09-24, 17:00, , 36.9, , -7.0, 5.3, 19.0, 1.72, 40, 45, 40, 40, 94, 94, 94, 94, , , 1 , "A6, De Zuidert, Emmeloord, Noordoostpolder, Flevoland, Nederland, 8305 AC, Nederland" -MOVE , 2022-09-24, 17:30, , 42.7, , -7.0, 6.1, 16.4, 1.72, 30, 35, 30, 30, 95, 94, 95, 95, , , 1 , "Rijksweg A6, Lelystad, Flevoland, Nederland, 3897 MA, Nederland" -MOVE , 2022-09-24, 18:00, , 38.1, , -6.3, 6.0, 16.5, 1.55, 21, 25, 21, 21, 94, 94, 94, 94, , , 1 , "A27, Rijnsweerd, Utrecht, Nederland, 3731 GC, Nederland" -MOVE , 2022-09-24, 18:30, , 39.7, , -7.7, 5.2, 19.4, 1.89, 10, 15, 10, 10, 96, 95, 96, 96, , , 1 , "A2, Hoenzadriel, Maasdriel, Gelderland, Nederland, 5334 NV, Nederland" -MOVE , 2022-09-24, 19:00, , 13.8, , -3.5, 3.9, 25.4, 0.86, 5, 7, 5, 5, 97, 96, 97, 97, 1 , 1 , 1 , "26, Keniaring, Drunen, Heusden, Noord-Brabant, Nederland, 5152 MX, Nederland" -TRIP , 2022-09-24, 19:00, 17794.9, 197.6, , -31.5, 6.3, 15.9, 7.75, 5, 30, 5, 50, 97, 95, 94, 97, 1 , 1 , 6 , "26, Keniaring, Drunen, Heusden, Noord-Brabant, Nederland, 5152 MX, Nederland" -DAY , 2022-09-24, Sat , 17794.9, 407.8, 25.9, -66.5, 6.1, 16.3, 16.36, 42, 40, 5,100, 97, 96, 92, 98, 1 , 5 , 15 , -DAY , 2022-09-25, Sun , 17794.9, , 5.6, , , , , 50, 50, 43, 50, 97, 97, 97, 97, , , , + Period, date , info , odometer, delta km, +kWh, -kWh, km/kWh, kWh/100km, cost Euro, SOC%CUR,AVG,MIN,MAX, 12V%CUR,AVG,MIN,MAX, #charges, #trips +DAY , 2022-09-17, Sat , 17324.2, , 2.8, , , , , 58, 55, 55, 58, 91, 91, 91, 91, 1 , +DAY , 2022-09-18, Sun , 17324.2, , 0.7, , , , , 59, 59, 59, 60, 91, 91, 91, 91, , +WEEK , 2022-09-18, WK 37, 17324.2, , 3.5, , , , , 59, 59, 55, 60, 91, 91, 91, 91, 1 , +DAY , 2022-09-19, Mon , 17330.7, 6.5, , , , , , 59, 60, 59, 61, 86, 88, 85, 91, , 2 +DAY , 2022-09-20, Tue , 17378.3, 47.6, , -7.0, 6.8, 14.7, 1.72, 45, 48, 45, 59, 91, 91, 87, 92, , 3 +DAY , 2022-09-21, Wed , 17383.5, 5.2, 18.2, -0.7, , , , 70, 63, 46, 70, 91, 91, 91, 92, 2 , 2 +DAY , 2022-09-22, Thu , 17383.5, , , , , , , 72, 72, 72, 72, 91, 91, 91, 91, 1 , +DAY , 2022-09-23, Fri , 17387.1, 3.6, 20.3, -0.7, , , , 100, 86, 71,100, 87, 87, 87, 88, 2 , 2 +DAY , 2022-09-24, Sat , 17794.9, 407.8, 25.9, -66.5, 6.1, 16.3, 16.36, 42, 40, 5,100, 97, 96, 92, 98, 1 , 5 +DAY , 2022-09-25, Sun , 17794.9, , 5.6, , , , , 50, 50, 43, 50, 97, 97, 97, 97, , +WEEK , 2022-09-25, WK 38, 17794.9, 470.7, 67.2, -73.5, 6.4, 15.6, 18.08, 50, 50, 5,100, 97, 97, 85, 98, 6 , 14 +MONTH , 2022-09-25, Sep , 17794.9, 470.7, 70.7, -73.5, 6.4, 15.6, 18.08, 50, 50, 5,100, 97, 97, 85, 98, 7 , 14 +YEAR , 2022-09-25, 2022 , 17794.9, 470.7, 70.7, -73.5, 6.4, 15.6, 18.08, 50, 50, 5,100, 97, 97, 85, 98, 7 , 14 +TRIPAVG , 2022-09-25, 14t , 17794.9, 33.6, 5.0, -5.2, 6.4, 15.6, 1.29, 50, 50, 5,100, 97, 97, 85, 98, 0.5, 1 +DAYAVG , 2022-09-25, 9d , 17794.9, 52.3, 7.9, -8.2, 6.4, 15.6, 2.01, 50, 50, 5,100, 97, 97, 85, 98, 0.8, 1.6 +WEEKAVG , 2022-09-25, 9d , 17794.9, 366.1, 55.0, -57.2, 6.4, 15.6, 14.06, 50, 50, 5,100, 97, 97, 85, 98, 5.4, 10.9 +MONTHAVG, 2022-09-25, 9d , 17794.9, 1590.8, 238.9, -248.4, 6.4, 15.6, 61.11, 50, 50, 5,100, 97, 97, 85, 98, 23.7, 47.3 +YEARLY , 2022-09-25, 9d , 17794.9, 19089.5, 2867.3, -2980.8, 6.4, 15.6, 733.29, 50, 50, 5,100, 97, 97, 85, 98, 283.9, 567.8 ``` You can redirect the standard output to a file, e.g. [summary.day.csv](https://raw.githubusercontent.com/ZuinigeRijder/hyundai_kia_connect_monitor/main/examples/summary.day.csv) @@ -665,171 +595,171 @@ Screenshot of excel example with some graphs: Below a larger example of using monitor for more than a month: ``` C:\Users\Rick\git\monitor>python summary.py - Period, date , info , odometer, delta km, +kWh, -kWh, km/kWh, kWh/100km, cost Euro, SOC%CUR,AVG,MIN,MAX, 12V%CUR,AVG,MIN,MAX, #charges, #trips, #moves -DAY , 2022-09-17, Sat , 17324.2, , 2.8, , , , , 58, 55, 55, 58, 91, 91, 91, 91, 1 , , 1 -DAY , 2022-09-18, Sun , 17324.2, , 0.7, , , , , 59, 59, 59, 60, 91, 91, 91, 91, , , -WEEK , 2022-09-18, WK 37, 17324.2, , 3.5, , , , , 59, 59, 55, 60, 91, 91, 91, 91, 1 , , 1 -TRIP , 2022-09-19, 15:00, 17324.3, 0.1, , , , , , 61, 60, 60, 61, 85, 90, 85, 91, , 1 , 1 -TRIP , 2022-09-19, 16:00, 17330.7, 6.4, , -1.4, , , , 59, 60, 59, 59, 86, 85, 86, 86, , 1 , 1 -DAY , 2022-09-19, Mon , 17330.7, 6.5, , , , , , 59, 60, 59, 61, 86, 88, 85, 91, , 2 , 2 -TRIP , 2022-09-20, 08:00, 17358.9, 28.2, , -4.2, 6.7, 14.9, 1.03, 53, 57, 53, 59, 91, 88, 88, 91, , 1 , 2 -TRIP , 2022-09-20, 15:30, 17371.5, 12.6, , -2.1, 6.0, 16.7, 0.52, 48, 51, 48, 53, 92, 90, 87, 92, , 1 , 4 -TRIP , 2022-09-20, 15:58, 17378.3, 6.8, , -0.7, , , , 47, 47, 47, 47, 91, 91, 91, 91, , 1 , 1 -DAY , 2022-09-20, Tue , 17378.3, 47.6, , -7.0, 6.8, 14.7, 1.72, 45, 49, 45, 59, 91, 91, 87, 92, , 3 , 7 -TRIP , 2022-09-21, 12:30, 17380.8, 2.5, 4.9, , , , , 52, 48, 46, 52, 92, 91, 91, 92, 1 , 1 , 1 -TRIP , 2022-09-21, 13:00, 17383.5, 2.7, , -0.7, , , , 51, 51, 51, 51, 91, 91, 91, 91, , 1 , 1 -DAY , 2022-09-21, Wed , 17383.5, 5.2, 18.2, -0.7, , , , 70, 63, 46, 70, 91, 91, 91, 92, 2 , 2 , 2 -DAY , 2022-09-22, Thu , 17383.5, , , , , , , 72, 72, 72, 72, 91, 91, 91, 91, 1 , , -TRIP , 2022-09-23, 11:21, 17385.4, 1.9, , -0.7, , , , 71, 71, 71, 71, 88, 89, 88, 88, , 1 , 1 -TRIP , 2022-09-23, 12:00, 17387.1, 1.7, 0.7, , , , , 72, 71, 72, 72, 87, 87, 87, 87, 1 , 1 , 1 -DAY , 2022-09-23, Fri , 17387.1, 3.6, 20.3, -0.7, , , , 100, 86, 71,100, 87, 87, 87, 88, 2 , 2 , 2 -TRIP , 2022-09-24, 09:57, 17390.8, 3.7, , -0.7, , , , 99,100, 99,100, 95, 94, 95, 95, , 1 , 1 -TRIP , 2022-09-24, 13:21, 17589.2, 198.4, , -32.9, 6.0, 16.6, 8.09, 52, 83, 52, 99, 96, 96, 92, 98, , 1 , 7 -TRIP , 2022-09-24, 14:31, 17592.5, 3.3, , -0.7, , , , 51, 51, 51, 51, 94, 95, 94, 94, , 1 , 1 -TRIP , 2022-09-24, 15:23, 17597.3, 4.8, , -0.7, , , , 50, 51, 50, 51, 96, 94, 93, 96, , 1 , 2 -TRIP , 2022-09-24, 19:00, 17794.9, 197.6, , -31.5, 6.3, 15.9, 7.75, 5, 30, 5, 50, 97, 95, 94, 97, 1 , 1 , 6 -DAY , 2022-09-24, Sat , 17794.9, 407.8, 25.9, -66.5, 6.1, 16.3, 16.36, 42, 42, 5,100, 97, 96, 92, 98, 1 , 5 , 17 -TRIP , 2022-09-25, 15:00, 17802.8, 7.9, 12.6, -0.7, , , , 59, 52, 43, 60, 94, 97, 94, 97, , 1 , 1 -TRIP , 2022-09-25, 18:00, 17810.9, 8.1, , -0.7, , , , 58, 58, 58, 59, 92, 93, 91, 94, , 1 , 3 -DAY , 2022-09-25, Sun , 17810.9, 16.0, 12.6, -0.7, , , , 59, 56, 43, 60, 92, 94, 91, 97, , 2 , 4 -WEEK , 2022-09-25, WK 38, 17810.9, 486.7, 74.2, -74.2, 6.6, 15.2, 18.25, 59, 59, 5,100, 92, 92, 85, 98, 6 , 16 , 34 -DAY , 2022-09-26, Mon , 17810.9, , , , , , , 58, 58, 58, 58, 92, 92, 92, 92, , , -TRIP , 2022-09-27, 07:30, 17817.9, 7.0, , -3.5, 2.0, 50.0, 0.86, 53, 56, 53, 57, 95, 94, 94, 95, , 1 , 2 -TRIP , 2022-09-27, 08:00, 17839.1, 21.2, , -0.7, , , , 52, 52, 52, 52, 96, 95, 96, 96, , 1 , 1 -TRIP , 2022-09-27, 09:30, 17841.8, 2.7, , -0.7, , , , 51, 51, 51, 51, 94, 94, 94, 94, , 1 , 2 -TRIP , 2022-09-27, 10:00, 17844.5, 2.7, , -0.7, , , , 50, 50, 50, 50, 93, 93, 93, 93, , 1 , 1 -TRIP , 2022-09-27, 11:00, 17844.6, 0.1, , , , , , 50, 50, 50, 50, 91, 92, 91, 91, , 1 , 1 -TRIP , 2022-09-27, 11:30, 17846.9, 2.3, , , , , , 50, 50, 50, 50, 92, 91, 92, 92, , 1 , 1 -TRIP , 2022-09-27, 16:00, 17853.4, 6.5, , -1.4, , , , 48, 49, 48, 49, 95, 92, 88, 95, , 1 , 3 -DAY , 2022-09-27, Tue , 17853.4, 42.5, , -9.8, 4.3, 23.1, 2.41, 44, 48, 44, 57, 95, 94, 88, 96, , 7 , 12 -TRIP , 2022-09-28, 09:30, 17858.5, 5.1, , -0.7, , , , 43, 43, 43, 43, 89, 92, 89, 89, , 1 , 1 -TRIP , 2022-09-28, 12:30, 17863.6, 5.1, , -0.7, , , , 42, 42, 42, 42, 88, 88, 88, 88, , 1 , 1 -DAY , 2022-09-28, Wed , 17863.6, 10.2, , -1.4, , , , 42, 42, 42, 43, 88, 88, 88, 89, , 2 , 2 -DAY , 2022-09-29, Thu , 17863.6, , , , , , , 41, 41, 41, 41, 88, 88, 88, 88, , , -TRIP , 2022-09-30, 11:00, 17865.4, 1.8, , , , , , 41, 41, 41, 41, 89, 88, 88, 89, , 1 , 2 -TRIP , 2022-09-30, 11:00, 17867.2, 1.8, , , , , , 41, 0, 41, 41, 89, 0, 89, 89, , 1 , 1 -DAY , 2022-09-30, Fri , 17867.2, 3.6, 13.3, , , , , 60, 55, 41, 60, 88, 88, 88, 89, 1 , 2 , 3 -MONTH , 2022-09-30, Sep , 17867.2, 543.0, 89.6, -85.4, 6.4, 15.7, 21.01, 60, 56, 5,100, 88, 91, 85, 98, 8 , 27 , 52 -TRIP , 2022-10-01, 10:00, 17871.2, 4.0, , -0.7, , , , 59, 59, 59, 59, 90, 89, 90, 90, , 1 , 1 -DAY , 2022-10-01, Sat , 17871.2, 4.0, , , , , , 61, 60, 59, 61, 90, 90, 90, 90, 1 , 1 , 2 -TRIP , 2022-10-02, 11:30, 17948.6, 77.4, , -12.6, 6.1, 16.3, 3.10, 43, 51, 43, 57, 92, 90, 90, 92, , 1 , 3 -TRIP , 2022-10-02, 17:00, 18026.2, 77.6, , -12.6, 6.2, 16.2, 3.10, 25, 32, 25, 35, 96, 95, 94, 96, , 1 , 3 -DAY , 2022-10-02, Sun , 18026.2, 155.0, 17.5, -25.2, 6.2, 16.3, 6.20, 50, 38, 25, 57, 96, 95, 90, 96, 1 , 2 , 6 -WEEK , 2022-10-02, WK 39, 18026.2, 215.3, 29.4, -35.7, 6.0, 16.6, 8.78, 50, 49, 25, 61, 96, 91, 88, 96, 3 , 14 , 25 -DAY , 2022-10-03, Mon , 18026.2, , 6.3, , , , , 59, 58, 52, 60, 96, 96, 96, 96, , , -TRIP , 2022-10-04, 12:00, 18036.3, 10.1, , -1.4, , , , 57, 57, 57, 57, 92, 93, 92, 92, , 1 , 2 -TRIP , 2022-10-04, 12:30, 18045.8, 9.5, , -0.7, , , , 56, 56, 56, 56, 94, 93, 94, 94, , 1 , 1 -TRIP , 2022-10-04, 15:00, 18049.8, 4.0, , -2.1, 1.9, 52.5, 0.52, 53, 55, 53, 56, 95, 93, 92, 95, , 1 , 3 -TRIP , 2022-10-04, 15:30, 18065.6, 15.8, , -0.7, , , , 52, 52, 52, 52, 96, 95, 96, 96, , 1 , 1 -DAY , 2022-10-04, Tue , 18065.6, 39.4, , -4.9, 8.0, 12.4, 1.21, 51, 53, 51, 57, 96, 95, 92, 96, , 4 , 7 -TRIP , 2022-10-05, 15:30, 18070.6, 5.0, , -0.7, , , , 49, 50, 49, 50, 87, 94, 87, 96, , 1 , 1 -TRIP , 2022-10-05, 16:30, 18075.4, 4.8, , -0.7, , , , 48, 48, 48, 48, 86, 86, 86, 86, , 1 , 1 -TRIP , 2022-10-05, 18:30, 18076.6, 1.2, , -0.7, , , , 47, 47, 47, 47, 85, 85, 85, 85, , 1 , 1 -TRIP , 2022-10-05, 19:01, 18082.7, 6.1, , , , , , 47, 47, 47, 47, 86, 85, 86, 86, , 1 , 1 -TRIP , 2022-10-05, 23:59, 18088.7, 6.0, , -1.4, , , , 45, 46, 45, 47, 86, 85, 84, 86, , 1 , 2 -DAY , 2022-10-05, Wed , 18088.7, 23.1, , -3.5, 6.6, 15.2, 0.86, 45, 47, 45, 50, 86, 86, 84, 96, , 5 , 6 -DAY , 2022-10-06, Thu , 18088.7, , , , , , , 44, 44, 44, 45, 86, 86, 86, 86, , , 1 -TRIP , 2022-10-07, 09:30, 18088.8, 0.1, , -0.7, , , , 43, 43, 43, 43, 90, 88, 90, 90, , 1 , 1 -TRIP , 2022-10-07, 10:00, 18094.1, 5.3, , , , , , 43, 43, 43, 43, 91, 90, 91, 91, , 1 , 1 -TRIP , 2022-10-07, 10:30, 18098.8, 4.7, , -0.7, , , , 42, 42, 42, 42, 90, 90, 90, 90, , 1 , 1 -DAY , 2022-10-07, Fri , 18098.8, 10.1, , -1.4, , , , 42, 42, 42, 43, 90, 90, 90, 91, , 3 , 3 -TRIP , 2022-10-08, 10:00, 18101.8, 3.0, , -0.7, , , , 41, 41, 41, 41, 86, 88, 86, 86, , 1 , 1 -TRIP , 2022-10-08, 11:00, 18105.2, 3.4, , -0.7, , , , 40, 40, 40, 40, 87, 86, 87, 87, , 1 , 1 -TRIP , 2022-10-08, 15:00, 18110.3, 5.1, , -0.7, , , , 39, 40, 39, 40, 86, 87, 86, 87, , 1 , 2 -TRIP , 2022-10-08, 17:00, 18115.4, 5.1, , -0.7, , , , 38, 38, 38, 38, 87, 86, 87, 87, , 1 , 1 -DAY , 2022-10-08, Sat , 18115.4, 16.6, , -2.8, 5.9, 16.9, 0.69, 37, 38, 37, 41, 87, 87, 86, 87, , 4 , 5 -DAY , 2022-10-09, Sun , 18115.4, , 14.7, , , , , 58, 54, 38, 58, 81, 81, 81, 81, 1 , , 1 -WEEK , 2022-10-09, WK 40, 18115.4, 89.2, 18.2, -12.6, 7.1, 14.1, 3.10, 58, 49, 37, 60, 81, 89, 81, 96, 1 , 16 , 23 -TRIP , 2022-10-10, 10:30, 18119.5, 4.1, , -2.8, 1.5, 68.3, 0.69, 54, 56, 54, 54, 87, 84, 87, 87, , 1 , 1 -TRIP , 2022-10-10, 11:00, 18138.5, 19.0, , , , , , 54, 54, 54, 54, 88, 87, 88, 88, , 1 , 1 -TRIP , 2022-10-10, 17:31, 18161.6, 23.1, , -2.8, 8.3, 12.1, 0.69, 49, 51, 49, 53, 91, 89, 88, 91, , 1 , 2 -DAY , 2022-10-10, Mon , 18161.6, 46.2, , -5.6, 8.3, 12.1, 1.38, 48, 49, 48, 54, 91, 90, 87, 91, , 3 , 4 -TRIP , 2022-10-11, 14:31, 18164.2, 2.6, , -0.7, , , , 47, 48, 47, 48, 87, 90, 87, 91, , 1 , 1 -TRIP , 2022-10-11, 14:45, 18165.5, 1.3, , , , , , 47, 47, 47, 47, 87, 87, 87, 87, , 1 , 1 -TRIP , 2022-10-11, 15:30, 18174.0, 8.5, , -1.4, , , , 45, 46, 45, 45, 88, 87, 88, 88, , 1 , 1 -TRIP , 2022-10-11, 16:30, 18181.3, 7.3, , -0.7, , , , 44, 45, 44, 45, 88, 87, 87, 88, , 1 , 2 -DAY , 2022-10-11, Tue , 18181.3, 19.7, , -2.8, 7.0, 14.2, 0.69, 43, 44, 43, 48, 88, 88, 87, 91, , 4 , 6 -TRIP , 2022-10-12, 13:30, 18186.8, 5.5, , -0.7, , , , 42, 42, 42, 42, 86, 87, 86, 86, , 1 , 1 -TRIP , 2022-10-12, 15:30, 18192.8, 6.0, , -0.7, , , , 41, 41, 41, 41, 85, 85, 85, 85, , 1 , 1 -DAY , 2022-10-12, Wed , 18192.8, 11.5, , -1.4, , , , 41, 41, 41, 42, 85, 85, 85, 86, , 2 , 2 -TRIP , 2022-10-13, 07:30, 18199.7, 6.9, , -4.2, 1.6, 60.9, 1.03, 35, 38, 35, 39, 95, 92, 94, 95, , 1 , 2 -TRIP , 2022-10-13, 08:00, 18221.0, 21.3, , , , , , 35, 35, 35, 35, 95, 95, 95, 95, , 1 , 1 -DAY , 2022-10-13, Thu , 18221.0, 28.2, 17.5, -4.2, 6.7, 14.9, 1.03, 60, 51, 35, 60, 95, 95, 94, 95, 2 , 2 , 3 -TRIP , 2022-10-14, 10:30, 18222.8, 1.8, , -0.7, , , , 59, 59, 59, 59, 97, 96, 96, 97, , 1 , 2 -TRIP , 2022-10-14, 11:00, 18224.5, 1.7, , , , , , 59, 59, 59, 59, 98, 97, 98, 98, , 1 , 1 -TRIP , 2022-10-14, 13:30, 18228.2, 3.7, , -0.7, , , , 58, 59, 58, 59, 97, 98, 97, 98, , 1 , 2 -TRIP , 2022-10-14, 14:30, 18231.5, 3.3, , -0.7, , , , 57, 58, 57, 58, 98, 97, 96, 98, , 1 , 2 -TRIP , 2022-10-14, 15:30, 18239.8, 8.3, , -0.7, , , , 56, 56, 56, 56, 99, 98, 99, 99, , 1 , 1 -TRIP , 2022-10-14, 16:00, 18248.3, 8.5, , -1.4, , , , 54, 55, 54, 54, 99, 99, 99, 99, , 1 , 1 -DAY , 2022-10-14, Fri , 18248.3, 27.3, , -4.2, 6.5, 15.4, 1.03, 54, 55, 54, 59, 99, 98, 96, 99, , 6 , 9 -TRIP , 2022-10-15, 10:00, 18250.2, 1.9, , , , , , 54, 54, 54, 54, 85, 88, 85, 85, , 1 , 2 -TRIP , 2022-10-15, 11:00, 18252.1, 1.9, , -0.7, , , , 53, 54, 53, 54, 85, 85, 85, 85, , 1 , 2 -DAY , 2022-10-15, Sat , 18252.1, 3.8, 4.2, , , , , 61, 59, 53, 61, 85, 85, 85, 85, 2 , 2 , 4 -TRIP , 2022-10-16, 11:30, 18329.5, 77.4, , -12.6, 6.1, 16.3, 3.10, 43, 52, 43, 61, 92, 91, 91, 92, , 1 , 4 -TRIP , 2022-10-16, 17:30, 18406.7, 77.2, , -10.5, 7.4, 13.6, 2.58, 28, 38, 28, 41, 91, 90, 89, 91, , 1 , 3 -DAY , 2022-10-16, Sun , 18406.7, 154.6, 16.1, -23.1, 6.7, 14.9, 5.68, 51, 41, 28, 61, 91, 91, 89, 92, 1 , 2 , 7 -WEEK , 2022-10-16, WK 41, 18406.7, 291.3, 35.7, -40.6, 7.2, 13.9, 9.99, 51, 49, 28, 61, 91, 91, 85, 99, 5 , 21 , 35 -DAY , 2022-10-17, Mon , 18406.7, , 5.6, , , , , 60, 59, 52, 60, 91, 91, 91, 91, , , -TRIP , 2022-10-18, 07:30, 18413.8, 7.1, , -2.8, 2.5, 39.4, 0.69, 56, 59, 56, 60, 85, 86, 85, 85, , 1 , 2 -TRIP , 2022-10-18, 08:00, 18435.6, 21.8, , -1.4, , , , 54, 55, 54, 54, 86, 85, 86, 86, , 1 , 1 -TRIP , 2022-10-18, 15:00, 18437.8, 2.2, , , , , , 52, 52, 52, 52, -1, 42, -1, 86, , 1 , 1 -TRIP , 2022-10-18, 15:30, 18439.7, 1.9, , -0.7, , , , 51, 51, 51, 51, -1, -1, -1, -1, , 1 , 1 -DAY , 2022-10-18, Tue , 18439.7, 33.0, , -4.9, 6.7, 14.8, 1.21, 51, 52, 51, 60, -1, 13, -1, 86, , 4 , 6 -TRIP , 2022-10-19, 13:03, 18445.0, 5.3, , -0.7, , , , 49, 50, 49, 50, 72, 45, -1, 72, , 1 , 2 -TRIP , 2022-10-19, 15:00, 18448.5, 3.5, , , , , , 48, 48, 48, 48, 73, 73, 73, 73, , 1 , 2 -TRIP , 2022-10-19, 16:30, 18452.1, 3.6, , -0.7, , , , 47, 47, 47, 47, 71, 72, 71, 71, , 1 , 1 -TRIP , 2022-10-19, 19:30, 18458.2, 6.1, , -1.4, , , , 45, 46, 45, 46, 73, 72, 72, 73, , 1 , 2 -TRIP , 2022-10-19, 23:59, 18464.2, 6.0, , -0.7, , , , 44, 44, 44, 44, 73, 73, 73, 73, , 1 , 1 -DAY , 2022-10-19, Wed , 18464.2, 24.5, , -3.5, 7.0, 14.3, 0.86, 44, 46, 44, 50, 73, 69, -1, 73, , 5 , 8 -TRIP , 2022-10-20, 13:46, 18486.2, 22.0, , -3.5, 6.3, 15.9, 0.86, 38, 42, 38, 43, 87, 79, 73, 87, , 1 , 2 -TRIP , 2022-10-20, 16:01, 18508.2, 22.0, , -2.8, 7.9, 12.7, 0.69, 34, 36, 34, 37, 87, 86, 85, 87, , 1 , 2 -DAY , 2022-10-20, Thu , 18508.2, 44.0, , -6.3, 7.0, 14.3, 1.55, 34, 35, 34, 43, 87, 86, 73, 87, , 2 , 4 -TRIP , 2022-10-21, 11:00, 18510.0, 1.8, , , , , , 34, 34, 34, 34, 90, 88, 90, 90, , 1 , 1 -TRIP , 2022-10-21, 12:00, 18511.7, 1.7, , -0.7, , , , 33, 33, 33, 33, 89, 89, 89, 89, , 1 , 1 -TRIP , 2022-10-21, 14:00, 18512.7, 1.0, 5.6, , , , , 41, 34, 32, 41, 94, 93, 94, 95, 1 , 1 , 1 -TRIP , 2022-10-21, 16:00, 18525.0, 12.3, 11.9, , , , , 58, 52, 55, 58, 95, 94, 94, 95, , 1 , 1 -TRIP , 2022-10-21, 17:01, 18530.4, 5.4, , -0.7, , , , 57, 57, 57, 57, 93, 94, 93, 93, , 1 , 1 -DAY , 2022-10-21, Fri , 18530.4, 22.2, 17.5, , , , , 59, 52, 32, 59, 93, 93, 89, 95, 2 , 5 , 5 -TRIP , 2022-10-22, 10:00, 18532.3, 1.9, , -0.7, , , , 58, 58, 58, 58, 86, 89, 86, 86, , 1 , 1 -TRIP , 2022-10-22, 12:00, 18534.6, 2.3, 7.0, , , , , 68, 60, 58, 68, 86, 85, 85, 86, 1 , 1 , 2 -TRIP , 2022-10-22, 13:50, 18535.1, 0.5, 8.4, -0.7, , , , 79, 76, 79, 80, 88, 86, 86, 88, , 1 , 1 -TRIP , 2022-10-22, 15:00, 18542.5, 7.4, , -0.7, , , , 78, 78, 78, 78, 86, 87, 86, 86, , 1 , 1 -TRIP , 2022-10-22, 16:00, 18550.6, 8.1, , -0.7, , , , 77, 77, 77, 77, 87, 86, 87, 87, , 1 , 1 -TRIP , 2022-10-22, 19:00, 18564.9, 14.3, , -2.1, 6.8, 14.7, 0.52, 74, 76, 74, 76, 88, 87, 87, 88, , 1 , 2 -DAY , 2022-10-22, Sat , 18564.9, 34.5, 33.6, -4.9, 7.0, 14.2, 1.21, 100, 79, 58,100, 88, 87, 85, 88, 2 , 6 , 8 -TRIP , 2022-10-23, 12:00, 18762.2, 197.3, , -31.5, 6.3, 16.0, 7.75, 55, 77, 55, 96, 89, 90, 89, 91, , 1 , 4 -TRIP , 2022-10-23, 13:00, 18765.6, 3.4, 14.7, , , , , 76, 65, 76, 76, 91, 90, 91, 91, 1 , 1 , 1 -TRIP , 2022-10-23, 14:00, 18772.3, 6.7, , -0.7, , , , 75, 75, 75, 75, 91, 91, 91, 91, , 1 , 1 -TRIP , 2022-10-23, 16:00, 18775.7, 3.4, , -9.8, 0.3, 288.2, 2.41, 61, 71, 61, 74, 91, 90, 90, 91, , 1 , 2 -TRIP , 2022-10-23, 17:30, 18973.0, 197.3, , -25.2, 7.8, 12.8, 6.20, 25, 42, 25, 36, 92, 91, 91, 92, , 1 , 2 -TRIP , 2022-10-23, 23:59, 18973.4, 0.4, 22.4, , , , , 57, 51, 29, 57, 93, 92, 92, 93, 1 , 1 , 1 -DAY , 2022-10-23, Sun , 18973.4, 408.5, 37.1, -67.2, 6.1, 16.5, 16.53, 57, 58, 25, 96, 93, 91, 89, 93, 2 , 6 , 11 -WEEK , 2022-10-23, WK 42, 18973.4, 566.7, 90.3, -86.1, 6.6, 15.2, 21.18, 57, 56, 25,100, 93, 78, -1, 95, 6 , 28 , 42 -TRIP , 2022-10-24, 08:00, 18984.5, 11.1, , -3.5, 3.2, 31.5, 0.86, 52, 56, 52, 57, 97, 95, 96, 97, , 1 , 2 -TRIP , 2022-10-24, 09:00, 19008.7, 24.2, , -1.4, , , , 50, 51, 50, 50, 97, 97, 97, 97, , 1 , 1 -TRIP , 2022-10-24, 19:00, 19026.6, 17.9, , -2.1, 8.5, 11.7, 0.52, 47, 48, 47, 47, 94, 95, 94, 94, , 1 , 1 -TRIP , 2022-10-24, 23:59, 19043.9, 17.3, , -2.8, 6.2, 16.2, 0.69, 43, 45, 43, 47, 95, 94, 94, 95, , 1 , 2 -DAY , 2022-10-24, Mon , 19043.9, 70.5, , -9.8, 7.2, 13.9, 2.41, 43, 47, 43, 57, 95, 95, 94, 97, , 4 , 6 -TRIP , 2022-10-25, 07:42, 19072.1, 28.2, , -4.2, 6.7, 14.9, 1.03, 37, 41, 37, 42, 90, 90, 87, 90, , 1 , 2 -DAY , 2022-10-25, Tue , 19072.1, 28.2, , -4.2, 6.7, 14.9, 1.03, 35, 36, 35, 42, 87, 88, 85, 90, , 1 , 3 -TRIP , 2022-10-26, 10:00, 19077.2, 5.1, , -0.7, , , , 34, 34, 34, 34, 85, 86, 85, 85, , 1 , 1 -TRIP , 2022-10-26, 13:00, 19082.2, 5.0, , -0.7, , , , 33, 33, 33, 33, 84, 84, 84, 84, , 1 , 1 -DAY , 2022-10-26, Wed , 19082.2, 10.1, , -1.4, , , , 33, 33, 33, 34, 84, 84, 84, 85, , 2 , 3 -TRIP , 2022-10-27, 10:00, 19082.7, 0.5, , , , , , 33, 33, 33, 33, 71, 77, 71, 71, 1 , 1 , 1 -TRIP , 2022-10-27, 13:00, 19083.1, 0.4, 25.2, , , , , 69, 53, 47, 69, 81, 73, 71, 81, , 1 , 1 -DAY , 2022-10-27, Thu , 19083.1, 0.9, 27.3, , , , , 72, 66, 33, 72, 81, 79, 71, 81, 2 , 2 , 3 -TRIP , 2022-10-28, 11:00, 19088.0, 4.9, , -0.7, , , , 71, 72, 71, 72, 87, 84, 84, 87, , 1 , 2 -TRIP , 2022-10-28, 12:01, 19092.9, 4.9, , -0.7, , , , 70, 70, 70, 70, 86, 86, 86, 86, , 1 , 1 -DAY , 2022-10-28, Fri , 19092.9, 9.8, , -1.4, , , , 70, 70, 70, 72, 86, 86, 84, 87, , 2 , 4 -DAY , 2022-10-29, Sat , 19092.9, , , , , , , 70, 70, 70, 70, 86, 86, 86, 86, , , -WEEK , 2022-10-29, WK 43, 19092.9, 119.5, 25.9, -16.8, 7.1, 14.1, 4.13, 70, 70, 33, 72, 86, 86, 71, 97, 2 , 11 , 19 -MONTH , 2022-10-29, Oct , 19092.9, 1225.7, 187.6, -180.6, 6.8, 14.7, 44.43, 70, 70, 25,100, 86, 86, -1, 99, 16 , 79 , 127 -YEAR , 2022-10-29, 2022 , 19092.9, 1768.7, 277.2, -266.0, 6.6, 15.0, 65.44, 70, 70, 5,100, 86, 86, -1, 99, 24 , 106 , 179 -TRIPAVG , 2022-10-29, 106t , 19092.9, 16.7, 2.6, -2.5, 6.6, 15.0, 0.62, 70, 70, 5,100, 86, 86, -1, 99, 0.2, 1 , 1.7 -DAYAVG , 2022-10-29, 43d , 19092.9, 41.1, 6.4, -6.2, 6.6, 15.0, 1.52, 70, 70, 5,100, 86, 86, -1, 99, 0.6, 2.5, 4.2 -WEEKAVG , 2022-10-29, 43d , 19092.9, 287.9, 45.1, -43.3, 6.6, 15.0, 10.65, 70, 70, 5,100, 86, 86, -1, 99, 3.9, 17.3, 29.1 -MONTHAVG, 2022-10-29, 43d , 19092.9, 1251.1, 196.1, -188.2, 6.6, 15.0, 46.29, 70, 70, 5,100, 86, 86, -1, 99, 17 , 75 , 126.6 -YEARLY , 2022-10-29, 43d , 19092.9, 15013.4, 2353.0, -2257.9, 6.6, 15.0, 555.45, 70, 70, 5,100, 86, 86, -1, 99, 203.7, 899.8, 1519.4 + Period, date , info , odometer, delta km, +kWh, -kWh, km/kWh, kWh/100km, cost Euro, SOC%CUR,AVG,MIN,MAX, 12V%CUR,AVG,MIN,MAX, #charges, #trips +DAY , 2022-09-17, Sat , 17324.2, , 2.8, , , , , 58, 55, 55, 58, 91, 91, 91, 91, 1 , +DAY , 2022-09-18, Sun , 17324.2, , 0.7, , , , , 59, 59, 59, 60, 91, 91, 91, 91, , +WEEK , 2022-09-18, WK 37, 17324.2, , 3.5, , , , , 59, 59, 55, 60, 91, 91, 91, 91, 1 , +TRIP , 2022-09-19, 15:00, 17324.3, 0.1, , , , , , 61, 60, 60, 61, 85, 90, 85, 91, , 1 +TRIP , 2022-09-19, 16:00, 17330.7, 6.4, , -1.4, , , , 59, 60, 59, 59, 86, 85, 86, 86, , 1 +DAY , 2022-09-19, Mon , 17330.7, 6.5, , , , , , 59, 60, 59, 61, 86, 88, 85, 91, , 2 +TRIP , 2022-09-20, 08:00, 17358.9, 28.2, , -4.2, 6.7, 14.9, 1.03, 53, 57, 53, 59, 91, 88, 88, 91, , 1 +TRIP , 2022-09-20, 15:30, 17371.5, 12.6, , -2.1, 6.0, 16.7, 0.52, 48, 51, 48, 53, 92, 90, 87, 92, , 1 +TRIP , 2022-09-20, 15:58, 17378.3, 6.8, , -0.7, , , , 47, 47, 47, 47, 91, 91, 91, 91, , 1 +DAY , 2022-09-20, Tue , 17378.3, 47.6, , -7.0, 6.8, 14.7, 1.72, 45, 49, 45, 59, 91, 91, 87, 92, , 3 +TRIP , 2022-09-21, 12:30, 17380.8, 2.5, 4.9, , , , , 52, 48, 46, 52, 92, 91, 91, 92, 1 , 1 +TRIP , 2022-09-21, 13:00, 17383.5, 2.7, , -0.7, , , , 51, 51, 51, 51, 91, 91, 91, 91, , 1 +DAY , 2022-09-21, Wed , 17383.5, 5.2, 18.2, -0.7, , , , 70, 63, 46, 70, 91, 91, 91, 92, 2 , 2 +DAY , 2022-09-22, Thu , 17383.5, , , , , , , 72, 72, 72, 72, 91, 91, 91, 91, 1 , +TRIP , 2022-09-23, 11:21, 17385.4, 1.9, , -0.7, , , , 71, 71, 71, 71, 88, 89, 88, 88, , 1 +TRIP , 2022-09-23, 12:00, 17387.1, 1.7, 0.7, , , , , 72, 71, 72, 72, 87, 87, 87, 87, 1 , 1 +DAY , 2022-09-23, Fri , 17387.1, 3.6, 20.3, -0.7, , , , 100, 86, 71,100, 87, 87, 87, 88, 2 , 2 +TRIP , 2022-09-24, 09:57, 17390.8, 3.7, , -0.7, , , , 99,100, 99,100, 95, 94, 95, 95, , 1 +TRIP , 2022-09-24, 13:21, 17589.2, 198.4, , -32.9, 6.0, 16.6, 8.09, 52, 83, 52, 99, 96, 96, 92, 98, , 1 +TRIP , 2022-09-24, 14:31, 17592.5, 3.3, , -0.7, , , , 51, 51, 51, 51, 94, 95, 94, 94, , 1 +TRIP , 2022-09-24, 15:23, 17597.3, 4.8, , -0.7, , , , 50, 51, 50, 51, 96, 94, 93, 96, , 1 +TRIP , 2022-09-24, 19:00, 17794.9, 197.6, , -31.5, 6.3, 15.9, 7.75, 5, 30, 5, 50, 97, 95, 94, 97, 1 , 1 +DAY , 2022-09-24, Sat , 17794.9, 407.8, 25.9, -66.5, 6.1, 16.3, 16.36, 42, 42, 5,100, 97, 96, 92, 98, 1 , 5 +TRIP , 2022-09-25, 15:00, 17802.8, 7.9, 12.6, -0.7, , , , 59, 52, 43, 60, 94, 97, 94, 97, , 1 +TRIP , 2022-09-25, 18:00, 17810.9, 8.1, , -0.7, , , , 58, 58, 58, 59, 92, 93, 91, 94, , 1 +DAY , 2022-09-25, Sun , 17810.9, 16.0, 12.6, -0.7, , , , 59, 56, 43, 60, 92, 94, 91, 97, , 2 +WEEK , 2022-09-25, WK 38, 17810.9, 486.7, 74.2, -74.2, 6.6, 15.2, 18.25, 59, 59, 5,100, 92, 92, 85, 98, 6 , 16 +DAY , 2022-09-26, Mon , 17810.9, , , , , , , 58, 58, 58, 58, 92, 92, 92, 92, , +TRIP , 2022-09-27, 07:30, 17817.9, 7.0, , -3.5, 2.0, 50.0, 0.86, 53, 56, 53, 57, 95, 94, 94, 95, , 1 +TRIP , 2022-09-27, 08:00, 17839.1, 21.2, , -0.7, , , , 52, 52, 52, 52, 96, 95, 96, 96, , 1 +TRIP , 2022-09-27, 09:30, 17841.8, 2.7, , -0.7, , , , 51, 51, 51, 51, 94, 94, 94, 94, , 1 +TRIP , 2022-09-27, 10:00, 17844.5, 2.7, , -0.7, , , , 50, 50, 50, 50, 93, 93, 93, 93, , 1 +TRIP , 2022-09-27, 11:00, 17844.6, 0.1, , , , , , 50, 50, 50, 50, 91, 92, 91, 91, , 1 +TRIP , 2022-09-27, 11:30, 17846.9, 2.3, , , , , , 50, 50, 50, 50, 92, 91, 92, 92, , 1 +TRIP , 2022-09-27, 16:00, 17853.4, 6.5, , -1.4, , , , 48, 49, 48, 49, 95, 92, 88, 95, , 1 +DAY , 2022-09-27, Tue , 17853.4, 42.5, , -9.8, 4.3, 23.1, 2.41, 44, 48, 44, 57, 95, 94, 88, 96, , 7 +TRIP , 2022-09-28, 09:30, 17858.5, 5.1, , -0.7, , , , 43, 43, 43, 43, 89, 92, 89, 89, , 1 +TRIP , 2022-09-28, 12:30, 17863.6, 5.1, , -0.7, , , , 42, 42, 42, 42, 88, 88, 88, 88, , 1 +DAY , 2022-09-28, Wed , 17863.6, 10.2, , -1.4, , , , 42, 42, 42, 43, 88, 88, 88, 89, , 2 +DAY , 2022-09-29, Thu , 17863.6, , , , , , , 41, 41, 41, 41, 88, 88, 88, 88, , +TRIP , 2022-09-30, 11:00, 17865.4, 1.8, , , , , , 41, 41, 41, 41, 89, 88, 88, 89, , 1 +TRIP , 2022-09-30, 11:00, 17867.2, 1.8, , , , , , 41, 0, 41, 41, 89, 0, 89, 89, , 1 +DAY , 2022-09-30, Fri , 17867.2, 3.6, 13.3, , , , , 60, 55, 41, 60, 88, 88, 88, 89, 1 , 2 +MONTH , 2022-09-30, Sep , 17867.2, 543.0, 89.6, -85.4, 6.4, 15.7, 21.01, 60, 56, 5,100, 88, 91, 85, 98, 8 , 27 +TRIP , 2022-10-01, 10:00, 17871.2, 4.0, , -0.7, , , , 59, 59, 59, 59, 90, 89, 90, 90, , 1 +DAY , 2022-10-01, Sat , 17871.2, 4.0, , , , , , 61, 60, 59, 61, 90, 90, 90, 90, 1 , 1 +TRIP , 2022-10-02, 11:30, 17948.6, 77.4, , -12.6, 6.1, 16.3, 3.10, 43, 51, 43, 57, 92, 90, 90, 92, , 1 +TRIP , 2022-10-02, 17:00, 18026.2, 77.6, , -12.6, 6.2, 16.2, 3.10, 25, 32, 25, 35, 96, 95, 94, 96, , 1 +DAY , 2022-10-02, Sun , 18026.2, 155.0, 17.5, -25.2, 6.2, 16.3, 6.20, 50, 38, 25, 57, 96, 95, 90, 96, 1 , 2 +WEEK , 2022-10-02, WK 39, 18026.2, 215.3, 29.4, -35.7, 6.0, 16.6, 8.78, 50, 49, 25, 61, 96, 91, 88, 96, 3 , 14 +DAY , 2022-10-03, Mon , 18026.2, , 6.3, , , , , 59, 58, 52, 60, 96, 96, 96, 96, , +TRIP , 2022-10-04, 12:00, 18036.3, 10.1, , -1.4, , , , 57, 57, 57, 57, 92, 93, 92, 92, , 1 +TRIP , 2022-10-04, 12:30, 18045.8, 9.5, , -0.7, , , , 56, 56, 56, 56, 94, 93, 94, 94, , 1 +TRIP , 2022-10-04, 15:00, 18049.8, 4.0, , -2.1, 1.9, 52.5, 0.52, 53, 55, 53, 56, 95, 93, 92, 95, , 1 +TRIP , 2022-10-04, 15:30, 18065.6, 15.8, , -0.7, , , , 52, 52, 52, 52, 96, 95, 96, 96, , 1 +DAY , 2022-10-04, Tue , 18065.6, 39.4, , -4.9, 8.0, 12.4, 1.21, 51, 53, 51, 57, 96, 95, 92, 96, , 4 +TRIP , 2022-10-05, 15:30, 18070.6, 5.0, , -0.7, , , , 49, 50, 49, 50, 87, 94, 87, 96, , 1 +TRIP , 2022-10-05, 16:30, 18075.4, 4.8, , -0.7, , , , 48, 48, 48, 48, 86, 86, 86, 86, , 1 +TRIP , 2022-10-05, 18:30, 18076.6, 1.2, , -0.7, , , , 47, 47, 47, 47, 85, 85, 85, 85, , 1 +TRIP , 2022-10-05, 19:01, 18082.7, 6.1, , , , , , 47, 47, 47, 47, 86, 85, 86, 86, , 1 +TRIP , 2022-10-05, 23:59, 18088.7, 6.0, , -1.4, , , , 45, 46, 45, 47, 86, 85, 84, 86, , 1 +DAY , 2022-10-05, Wed , 18088.7, 23.1, , -3.5, 6.6, 15.2, 0.86, 45, 47, 45, 50, 86, 86, 84, 96, , 5 +DAY , 2022-10-06, Thu , 18088.7, , , , , , , 44, 44, 44, 45, 86, 86, 86, 86, , +TRIP , 2022-10-07, 09:30, 18088.8, 0.1, , -0.7, , , , 43, 43, 43, 43, 90, 88, 90, 90, , 1 +TRIP , 2022-10-07, 10:00, 18094.1, 5.3, , , , , , 43, 43, 43, 43, 91, 90, 91, 91, , 1 +TRIP , 2022-10-07, 10:30, 18098.8, 4.7, , -0.7, , , , 42, 42, 42, 42, 90, 90, 90, 90, , 1 +DAY , 2022-10-07, Fri , 18098.8, 10.1, , -1.4, , , , 42, 42, 42, 43, 90, 90, 90, 91, , 3 +TRIP , 2022-10-08, 10:00, 18101.8, 3.0, , -0.7, , , , 41, 41, 41, 41, 86, 88, 86, 86, , 1 +TRIP , 2022-10-08, 11:00, 18105.2, 3.4, , -0.7, , , , 40, 40, 40, 40, 87, 86, 87, 87, , 1 +TRIP , 2022-10-08, 15:00, 18110.3, 5.1, , -0.7, , , , 39, 40, 39, 40, 86, 87, 86, 87, , 1 +TRIP , 2022-10-08, 17:00, 18115.4, 5.1, , -0.7, , , , 38, 38, 38, 38, 87, 86, 87, 87, , 1 +DAY , 2022-10-08, Sat , 18115.4, 16.6, , -2.8, 5.9, 16.9, 0.69, 37, 38, 37, 41, 87, 87, 86, 87, , 4 +DAY , 2022-10-09, Sun , 18115.4, , 14.7, , , , , 58, 54, 38, 58, 81, 81, 81, 81, 1 , +WEEK , 2022-10-09, WK 40, 18115.4, 89.2, 18.2, -12.6, 7.1, 14.1, 3.10, 58, 49, 37, 60, 81, 89, 81, 96, 1 , 16 +TRIP , 2022-10-10, 10:30, 18119.5, 4.1, , -2.8, 1.5, 68.3, 0.69, 54, 56, 54, 54, 87, 84, 87, 87, , 1 +TRIP , 2022-10-10, 11:00, 18138.5, 19.0, , , , , , 54, 54, 54, 54, 88, 87, 88, 88, , 1 +TRIP , 2022-10-10, 17:31, 18161.6, 23.1, , -2.8, 8.3, 12.1, 0.69, 49, 51, 49, 53, 91, 89, 88, 91, , 1 +DAY , 2022-10-10, Mon , 18161.6, 46.2, , -5.6, 8.3, 12.1, 1.38, 48, 49, 48, 54, 91, 90, 87, 91, , 3 +TRIP , 2022-10-11, 14:31, 18164.2, 2.6, , -0.7, , , , 47, 48, 47, 48, 87, 90, 87, 91, , 1 +TRIP , 2022-10-11, 14:45, 18165.5, 1.3, , , , , , 47, 47, 47, 47, 87, 87, 87, 87, , 1 +TRIP , 2022-10-11, 15:30, 18174.0, 8.5, , -1.4, , , , 45, 46, 45, 45, 88, 87, 88, 88, , 1 +TRIP , 2022-10-11, 16:30, 18181.3, 7.3, , -0.7, , , , 44, 45, 44, 45, 88, 87, 87, 88, , 1 +DAY , 2022-10-11, Tue , 18181.3, 19.7, , -2.8, 7.0, 14.2, 0.69, 43, 44, 43, 48, 88, 88, 87, 91, , 4 +TRIP , 2022-10-12, 13:30, 18186.8, 5.5, , -0.7, , , , 42, 42, 42, 42, 86, 87, 86, 86, , 1 +TRIP , 2022-10-12, 15:30, 18192.8, 6.0, , -0.7, , , , 41, 41, 41, 41, 85, 85, 85, 85, , 1 +DAY , 2022-10-12, Wed , 18192.8, 11.5, , -1.4, , , , 41, 41, 41, 42, 85, 85, 85, 86, , 2 +TRIP , 2022-10-13, 07:30, 18199.7, 6.9, , -4.2, 1.6, 60.9, 1.03, 35, 38, 35, 39, 95, 92, 94, 95, , 1 +TRIP , 2022-10-13, 08:00, 18221.0, 21.3, , , , , , 35, 35, 35, 35, 95, 95, 95, 95, , 1 +DAY , 2022-10-13, Thu , 18221.0, 28.2, 17.5, -4.2, 6.7, 14.9, 1.03, 60, 51, 35, 60, 95, 95, 94, 95, 2 , 2 +TRIP , 2022-10-14, 10:30, 18222.8, 1.8, , -0.7, , , , 59, 59, 59, 59, 97, 96, 96, 97, , 1 +TRIP , 2022-10-14, 11:00, 18224.5, 1.7, , , , , , 59, 59, 59, 59, 98, 97, 98, 98, , 1 +TRIP , 2022-10-14, 13:30, 18228.2, 3.7, , -0.7, , , , 58, 59, 58, 59, 97, 98, 97, 98, , 1 +TRIP , 2022-10-14, 14:30, 18231.5, 3.3, , -0.7, , , , 57, 58, 57, 58, 98, 97, 96, 98, , 1 +TRIP , 2022-10-14, 15:30, 18239.8, 8.3, , -0.7, , , , 56, 56, 56, 56, 99, 98, 99, 99, , 1 +TRIP , 2022-10-14, 16:00, 18248.3, 8.5, , -1.4, , , , 54, 55, 54, 54, 99, 99, 99, 99, , 1 +DAY , 2022-10-14, Fri , 18248.3, 27.3, , -4.2, 6.5, 15.4, 1.03, 54, 55, 54, 59, 99, 98, 96, 99, , 6 +TRIP , 2022-10-15, 10:00, 18250.2, 1.9, , , , , , 54, 54, 54, 54, 85, 88, 85, 85, , 1 +TRIP , 2022-10-15, 11:00, 18252.1, 1.9, , -0.7, , , , 53, 54, 53, 54, 85, 85, 85, 85, , 1 +DAY , 2022-10-15, Sat , 18252.1, 3.8, 4.2, , , , , 61, 59, 53, 61, 85, 85, 85, 85, 2 , 2 +TRIP , 2022-10-16, 11:30, 18329.5, 77.4, , -12.6, 6.1, 16.3, 3.10, 43, 52, 43, 61, 92, 91, 91, 92, , 1 +TRIP , 2022-10-16, 17:30, 18406.7, 77.2, , -10.5, 7.4, 13.6, 2.58, 28, 38, 28, 41, 91, 90, 89, 91, , 1 +DAY , 2022-10-16, Sun , 18406.7, 154.6, 16.1, -23.1, 6.7, 14.9, 5.68, 51, 41, 28, 61, 91, 91, 89, 92, 1 , 2 +WEEK , 2022-10-16, WK 41, 18406.7, 291.3, 35.7, -40.6, 7.2, 13.9, 9.99, 51, 49, 28, 61, 91, 91, 85, 99, 5 , 21 +DAY , 2022-10-17, Mon , 18406.7, , 5.6, , , , , 60, 59, 52, 60, 91, 91, 91, 91, , +TRIP , 2022-10-18, 07:30, 18413.8, 7.1, , -2.8, 2.5, 39.4, 0.69, 56, 59, 56, 60, 85, 86, 85, 85, , 1 +TRIP , 2022-10-18, 08:00, 18435.6, 21.8, , -1.4, , , , 54, 55, 54, 54, 86, 85, 86, 86, , 1 +TRIP , 2022-10-18, 15:00, 18437.8, 2.2, , , , , , 52, 52, 52, 52, -1, 42, -1, 86, , 1 +TRIP , 2022-10-18, 15:30, 18439.7, 1.9, , -0.7, , , , 51, 51, 51, 51, -1, -1, -1, -1, , 1 +DAY , 2022-10-18, Tue , 18439.7, 33.0, , -4.9, 6.7, 14.8, 1.21, 51, 52, 51, 60, -1, 13, -1, 86, , 4 +TRIP , 2022-10-19, 13:03, 18445.0, 5.3, , -0.7, , , , 49, 50, 49, 50, 72, 45, -1, 72, , 1 +TRIP , 2022-10-19, 15:00, 18448.5, 3.5, , , , , , 48, 48, 48, 48, 73, 73, 73, 73, , 1 +TRIP , 2022-10-19, 16:30, 18452.1, 3.6, , -0.7, , , , 47, 47, 47, 47, 71, 72, 71, 71, , 1 +TRIP , 2022-10-19, 19:30, 18458.2, 6.1, , -1.4, , , , 45, 46, 45, 46, 73, 72, 72, 73, , 1 +TRIP , 2022-10-19, 23:59, 18464.2, 6.0, , -0.7, , , , 44, 44, 44, 44, 73, 73, 73, 73, , 1 +DAY , 2022-10-19, Wed , 18464.2, 24.5, , -3.5, 7.0, 14.3, 0.86, 44, 46, 44, 50, 73, 69, -1, 73, , 5 +TRIP , 2022-10-20, 13:46, 18486.2, 22.0, , -3.5, 6.3, 15.9, 0.86, 38, 42, 38, 43, 87, 79, 73, 87, , 1 +TRIP , 2022-10-20, 16:01, 18508.2, 22.0, , -2.8, 7.9, 12.7, 0.69, 34, 36, 34, 37, 87, 86, 85, 87, , 1 +DAY , 2022-10-20, Thu , 18508.2, 44.0, , -6.3, 7.0, 14.3, 1.55, 34, 35, 34, 43, 87, 86, 73, 87, , 2 +TRIP , 2022-10-21, 11:00, 18510.0, 1.8, , , , , , 34, 34, 34, 34, 90, 88, 90, 90, , 1 +TRIP , 2022-10-21, 12:00, 18511.7, 1.7, , -0.7, , , , 33, 33, 33, 33, 89, 89, 89, 89, , 1 +TRIP , 2022-10-21, 14:00, 18512.7, 1.0, 5.6, , , , , 41, 34, 32, 41, 94, 93, 94, 95, 1 , 1 +TRIP , 2022-10-21, 16:00, 18525.0, 12.3, 11.9, , , , , 58, 52, 55, 58, 95, 94, 94, 95, , 1 +TRIP , 2022-10-21, 17:01, 18530.4, 5.4, , -0.7, , , , 57, 57, 57, 57, 93, 94, 93, 93, , 1 +DAY , 2022-10-21, Fri , 18530.4, 22.2, 17.5, , , , , 59, 52, 32, 59, 93, 93, 89, 95, 2 , 5 +TRIP , 2022-10-22, 10:00, 18532.3, 1.9, , -0.7, , , , 58, 58, 58, 58, 86, 89, 86, 86, , 1 +TRIP , 2022-10-22, 12:00, 18534.6, 2.3, 7.0, , , , , 68, 60, 58, 68, 86, 85, 85, 86, 1 , 1 +TRIP , 2022-10-22, 13:50, 18535.1, 0.5, 8.4, -0.7, , , , 79, 76, 79, 80, 88, 86, 86, 88, , 1 +TRIP , 2022-10-22, 15:00, 18542.5, 7.4, , -0.7, , , , 78, 78, 78, 78, 86, 87, 86, 86, , 1 +TRIP , 2022-10-22, 16:00, 18550.6, 8.1, , -0.7, , , , 77, 77, 77, 77, 87, 86, 87, 87, , 1 +TRIP , 2022-10-22, 19:00, 18564.9, 14.3, , -2.1, 6.8, 14.7, 0.52, 74, 76, 74, 76, 88, 87, 87, 88, , 1 +DAY , 2022-10-22, Sat , 18564.9, 34.5, 33.6, -4.9, 7.0, 14.2, 1.21, 100, 79, 58,100, 88, 87, 85, 88, 2 , 6 +TRIP , 2022-10-23, 12:00, 18762.2, 197.3, , -31.5, 6.3, 16.0, 7.75, 55, 77, 55, 96, 89, 90, 89, 91, , 1 +TRIP , 2022-10-23, 13:00, 18765.6, 3.4, 14.7, , , , , 76, 65, 76, 76, 91, 90, 91, 91, 1 , 1 +TRIP , 2022-10-23, 14:00, 18772.3, 6.7, , -0.7, , , , 75, 75, 75, 75, 91, 91, 91, 91, , 1 +TRIP , 2022-10-23, 16:00, 18775.7, 3.4, , -9.8, 0.3, 288.2, 2.41, 61, 71, 61, 74, 91, 90, 90, 91, , 1 +TRIP , 2022-10-23, 17:30, 18973.0, 197.3, , -25.2, 7.8, 12.8, 6.20, 25, 42, 25, 36, 92, 91, 91, 92, , 1 +TRIP , 2022-10-23, 23:59, 18973.4, 0.4, 22.4, , , , , 57, 51, 29, 57, 93, 92, 92, 93, 1 , 1 +DAY , 2022-10-23, Sun , 18973.4, 408.5, 37.1, -67.2, 6.1, 16.5, 16.53, 57, 58, 25, 96, 93, 91, 89, 93, 2 , 6 +WEEK , 2022-10-23, WK 42, 18973.4, 566.7, 90.3, -86.1, 6.6, 15.2, 21.18, 57, 56, 25,100, 93, 78, -1, 95, 6 , 28 +TRIP , 2022-10-24, 08:00, 18984.5, 11.1, , -3.5, 3.2, 31.5, 0.86, 52, 56, 52, 57, 97, 95, 96, 97, , 1 +TRIP , 2022-10-24, 09:00, 19008.7, 24.2, , -1.4, , , , 50, 51, 50, 50, 97, 97, 97, 97, , 1 +TRIP , 2022-10-24, 19:00, 19026.6, 17.9, , -2.1, 8.5, 11.7, 0.52, 47, 48, 47, 47, 94, 95, 94, 94, , 1 +TRIP , 2022-10-24, 23:59, 19043.9, 17.3, , -2.8, 6.2, 16.2, 0.69, 43, 45, 43, 47, 95, 94, 94, 95, , 1 +DAY , 2022-10-24, Mon , 19043.9, 70.5, , -9.8, 7.2, 13.9, 2.41, 43, 47, 43, 57, 95, 95, 94, 97, , 4 +TRIP , 2022-10-25, 07:42, 19072.1, 28.2, , -4.2, 6.7, 14.9, 1.03, 37, 41, 37, 42, 90, 90, 87, 90, , 1 +DAY , 2022-10-25, Tue , 19072.1, 28.2, , -4.2, 6.7, 14.9, 1.03, 35, 36, 35, 42, 87, 88, 85, 90, , 1 +TRIP , 2022-10-26, 10:00, 19077.2, 5.1, , -0.7, , , , 34, 34, 34, 34, 85, 86, 85, 85, , 1 +TRIP , 2022-10-26, 13:00, 19082.2, 5.0, , -0.7, , , , 33, 33, 33, 33, 84, 84, 84, 84, , 1 +DAY , 2022-10-26, Wed , 19082.2, 10.1, , -1.4, , , , 33, 33, 33, 34, 84, 84, 84, 85, , 2 +TRIP , 2022-10-27, 10:00, 19082.7, 0.5, , , , , , 33, 33, 33, 33, 71, 77, 71, 71, 1 , 1 +TRIP , 2022-10-27, 13:00, 19083.1, 0.4, 25.2, , , , , 69, 53, 47, 69, 81, 73, 71, 81, , 1 +DAY , 2022-10-27, Thu , 19083.1, 0.9, 27.3, , , , , 72, 66, 33, 72, 81, 79, 71, 81, 2 , 2 +TRIP , 2022-10-28, 11:00, 19088.0, 4.9, , -0.7, , , , 71, 72, 71, 72, 87, 84, 84, 87, , 1 +TRIP , 2022-10-28, 12:01, 19092.9, 4.9, , -0.7, , , , 70, 70, 70, 70, 86, 86, 86, 86, , 1 +DAY , 2022-10-28, Fri , 19092.9, 9.8, , -1.4, , , , 70, 70, 70, 72, 86, 86, 84, 87, , 2 +DAY , 2022-10-29, Sat , 19092.9, , , , , , , 70, 70, 70, 70, 86, 86, 86, 86, , +WEEK , 2022-10-29, WK 43, 19092.9, 119.5, 25.9, -16.8, 7.1, 14.1, 4.13, 70, 70, 33, 72, 86, 86, 71, 97, 2 , 11 +MONTH , 2022-10-29, Oct , 19092.9, 1225.7, 187.6, -180.6, 6.8, 14.7, 44.43, 70, 70, 25,100, 86, 86, -1, 99, 16 , 79 +YEAR , 2022-10-29, 2022 , 19092.9, 1768.7, 277.2, -266.0, 6.6, 15.0, 65.44, 70, 70, 5,100, 86, 86, -1, 99, 24 , 106 +TRIPAVG , 2022-10-29, 106t , 19092.9, 16.7, 2.6, -2.5, 6.6, 15.0, 0.62, 70, 70, 5,100, 86, 86, -1, 99, 0.2, 1 +DAYAVG , 2022-10-29, 43d , 19092.9, 41.1, 6.4, -6.2, 6.6, 15.0, 1.52, 70, 70, 5,100, 86, 86, -1, 99, 0.6, 2.5 +WEEKAVG , 2022-10-29, 43d , 19092.9, 287.9, 45.1, -43.3, 6.6, 15.0, 10.65, 70, 70, 5,100, 86, 86, -1, 99, 3.9, 17.3 +MONTHAVG, 2022-10-29, 43d , 19092.9, 1251.1, 196.1, -188.2, 6.6, 15.0, 46.29, 70, 70, 5,100, 86, 86, -1, 99, 17 , 75 +YEARLY , 2022-10-29, 43d , 19092.9, 15013.4, 2353.0, -2257.9, 6.6, 15.0, 555.45, 70, 70, 5,100, 86, 86, -1, 99, 203.7, 899.8 ``` Notes: @@ -870,26 +800,26 @@ What has happened on those TRIPs: Example standard output: ``` C:\Users\Rick\git\monitor>python summary.py sheetupdate - Period, date , info , odometer, delta km, +kWh, -kWh, km/kWh, kWh/100km, cost Euro, SOC%CUR,AVG,MIN,MAX, 12V%CUR,AVG,MIN,MAX, #charges, #trips, #moves -DAY , 2022-09-17, Sat , 17324.2, , 2.8, , , , , 58, 55, 55, 58, 91, 91, 91, 91, 1 , , -DAY , 2022-09-18, Sun , 17324.2, , 0.7, , , , , 59, 59, 59, 60, 91, 91, 91, 91, , , -WEEK , 2022-09-18, WK 37, 17324.2, , 3.5, , , , , 59, 59, 55, 60, 91, 91, 91, 91, 1 , , -DAY , 2022-09-19, Mon , 17330.7, 6.5, , , , , , 59, 60, 59, 61, 86, 88, 85, 91, , 2 , 2 -DAY , 2022-09-20, Tue , 17378.3, 47.6, , -7.0, 6.8, 14.7, 1.72, 45, 48, 45, 59, 91, 91, 87, 92, , 3 , 6 -DAY , 2022-09-21, Wed , 17383.5, 5.2, 18.2, -0.7, , , , 70, 63, 46, 70, 91, 91, 91, 92, 2 , 2 , 2 -DAY , 2022-09-22, Thu , 17383.5, , , , , , , 72, 72, 72, 72, 91, 91, 91, 91, 1 , , -DAY , 2022-09-23, Fri , 17387.1, 3.6, 20.3, -0.7, , , , 100, 86, 71,100, 87, 87, 87, 88, 2 , 2 , 2 -DAY , 2022-09-24, Sat , 17794.9, 407.8, 25.9, -66.5, 6.1, 16.3, 16.36, 42, 40, 5,100, 97, 96, 92, 98, 1 , 5 , 15 -DAY , 2022-09-25, Sun , 17794.9, , 5.6, , , , , 50, 46, 43, 50, 97, 97, 97, 97, , , -WEEK , 2022-09-25, WK 38, 17794.9, 470.7, 67.2, -73.5, 6.4, 15.6, 18.08, 50, 60, 5,100, 97, 91, 85, 98, 6 , 14 , 27 -MONTH , 2022-09-25, Sep , 17794.9, 470.7, 70.7, -73.5, 6.4, 15.6, 18.08, 50, 59, 5,100, 97, 91, 85, 98, 7 , 14 , 27 -YEAR , 2022-09-25, 2022 , 17794.9, 470.7, 70.7, -73.5, 6.4, 15.6, 18.08, 50, 59, 5,100, 97, 91, 85, 98, 7 , 14 , 27 -TRIPAVG , 2022-09-25, 14t , 17794.9, 33.6, 5.0, -5.2, 6.4, 15.6, 1.29, 50, 59, 5,100, 97, 91, 85, 98, 0.5, 1 , 1.9 -DAYAVG , 2022-09-25, 9d , 17794.9, 52.3, 7.9, -8.2, 6.4, 15.6, 2.01, 50, 59, 5,100, 97, 91, 85, 98, 0.8, 1.6, 3 -WEEKAVG , 2022-09-25, 9d , 17794.9, 366.1, 55.0, -57.2, 6.4, 15.6, 14.06, 50, 59, 5,100, 97, 91, 85, 98, 5.4, 10.9, 21 -MONTHAVG, 2022-09-25, 9d , 17794.9, 1590.8, 238.9, -248.4, 6.4, 15.6, 61.11, 50, 59, 5,100, 97, 91, 85, 98, 23.7, 47.3, 91.2 -YEARLY , 2022-09-25, 9d , 17794.9, 19089.5, 2867.3, -2980.8, 6.4, 15.6, 733.29, 50, 59, 5,100, 97, 91, 85, 98, 283.9, 567.8, 1095 - Period, date , info , odometer, delta km, +kWh, -kWh, km/kWh, kWh/100km, cost Euro, SOC%CUR,AVG,MIN,MAX, 12V%CUR,AVG,MIN,MAX, #charges, #trips, #moves + Period, date , info , odometer, delta km, +kWh, -kWh, km/kWh, kWh/100km, cost Euro, SOC%CUR,AVG,MIN,MAX, 12V%CUR,AVG,MIN,MAX, #charges, #trips +DAY , 2022-09-17, Sat , 17324.2, , 2.8, , , , , 58, 55, 55, 58, 91, 91, 91, 91, 1 , +DAY , 2022-09-18, Sun , 17324.2, , 0.7, , , , , 59, 59, 59, 60, 91, 91, 91, 91, , +WEEK , 2022-09-18, WK 37, 17324.2, , 3.5, , , , , 59, 59, 55, 60, 91, 91, 91, 91, 1 , +DAY , 2022-09-19, Mon , 17330.7, 6.5, , , , , , 59, 60, 59, 61, 86, 88, 85, 91, , 2 +DAY , 2022-09-20, Tue , 17378.3, 47.6, , -7.0, 6.8, 14.7, 1.72, 45, 48, 45, 59, 91, 91, 87, 92, , 3 +DAY , 2022-09-21, Wed , 17383.5, 5.2, 18.2, -0.7, , , , 70, 63, 46, 70, 91, 91, 91, 92, 2 , 2 +DAY , 2022-09-22, Thu , 17383.5, , , , , , , 72, 72, 72, 72, 91, 91, 91, 91, 1 , +DAY , 2022-09-23, Fri , 17387.1, 3.6, 20.3, -0.7, , , , 100, 86, 71,100, 87, 87, 87, 88, 2 , 2 +DAY , 2022-09-24, Sat , 17794.9, 407.8, 25.9, -66.5, 6.1, 16.3, 16.36, 42, 40, 5,100, 97, 96, 92, 98, 1 , 5 +DAY , 2022-09-25, Sun , 17794.9, , 5.6, , , , , 50, 46, 43, 50, 97, 97, 97, 97, , +WEEK , 2022-09-25, WK 38, 17794.9, 470.7, 67.2, -73.5, 6.4, 15.6, 18.08, 50, 60, 5,100, 97, 91, 85, 98, 6 , 14 +MONTH , 2022-09-25, Sep , 17794.9, 470.7, 70.7, -73.5, 6.4, 15.6, 18.08, 50, 59, 5,100, 97, 91, 85, 98, 7 , 14 +YEAR , 2022-09-25, 2022 , 17794.9, 470.7, 70.7, -73.5, 6.4, 15.6, 18.08, 50, 59, 5,100, 97, 91, 85, 98, 7 , 14 +TRIPAVG , 2022-09-25, 14t , 17794.9, 33.6, 5.0, -5.2, 6.4, 15.6, 1.29, 50, 59, 5,100, 97, 91, 85, 98, 0.5, 1 +DAYAVG , 2022-09-25, 9d , 17794.9, 52.3, 7.9, -8.2, 6.4, 15.6, 2.01, 50, 59, 5,100, 97, 91, 85, 98, 0.8, 1.6 +WEEKAVG , 2022-09-25, 9d , 17794.9, 366.1, 55.0, -57.2, 6.4, 15.6, 14.06, 50, 59, 5,100, 97, 91, 85, 98, 5.4, 10.9 +MONTHAVG, 2022-09-25, 9d , 17794.9, 1590.8, 238.9, -248.4, 6.4, 15.6, 61.11, 50, 59, 5,100, 97, 91, 85, 98, 23.7, 47.3 +YEARLY , 2022-09-25, 9d , 17794.9, 19089.5, 2867.3, -2980.8, 6.4, 15.6, 733.29, 50, 59, 5,100, 97, 91, 85, 98, 283.9, 567.8 + Period, date , info , odometer, delta km, +kWh, -kWh, km/kWh, kWh/100km, cost Euro, SOC%CUR,AVG,MIN,MAX, 12V%CUR,AVG,MIN,MAX, #charges, #trips ``` Screenshot of spreadsheet: diff --git a/examples/summary.day.csv b/examples/summary.day.csv index 0a7701d..c95c619 100644 --- a/examples/summary.day.csv +++ b/examples/summary.day.csv @@ -1,10 +1,10 @@ - Period, date , info , odometer, delta km, +kWh, -kWh, km/kWh, kWh/100km, cost Euro, SOC%CUR,AVG,MIN,MAX, 12V%CUR,AVG,MIN,MAX, #charges, #trips, #moves -DAY , 2022-09-17, Sat , 17324.2, , 2.8, , , , , 58, 55, 55, 58, 91, 91, 91, 91, 1 , , -DAY , 2022-09-18, Sun , 17324.2, , 0.7, , , , , 59, 59, 59, 60, 91, 91, 91, 91, , , -DAY , 2022-09-19, Mon , 17330.7, 6.5, , , , , , 59, 60, 59, 61, 86, 88, 85, 91, , 2 , 2 -DAY , 2022-09-20, Tue , 17378.3, 47.6, , -7.0, 6.8, 14.7, 1.72, 45, 48, 45, 59, 91, 91, 87, 92, , 3 , 6 -DAY , 2022-09-21, Wed , 17383.5, 5.2, 18.2, -0.7, , , , 70, 63, 46, 70, 91, 91, 91, 92, 2 , 2 , 2 -DAY , 2022-09-22, Thu , 17383.5, , , , , , , 72, 72, 72, 72, 91, 91, 91, 91, 1 , , -DAY , 2022-09-23, Fri , 17387.1, 3.6, 20.3, -0.7, , , , 100, 86, 71,100, 87, 87, 87, 88, 2 , 2 , 2 -DAY , 2022-09-24, Sat , 17794.9, 407.8, 25.9, -66.5, 6.1, 16.3, 16.36, 42, 40, 5,100, 97, 96, 92, 98, 1 , 5 , 15 -DAY , 2022-09-25, Sun , 17794.9, , 5.6, , , , , 50, 50, 43, 50, 97, 97, 97, 97, , , + Period, date , info , odometer, delta km, +kWh, -kWh, km/kWh, kWh/100km, cost Euro, SOC%CUR,AVG,MIN,MAX, 12V%CUR,AVG,MIN,MAX, #charges, #trips +DAY , 2022-09-17, Sat , 17324.2, , 2.8, , , , , 58, 55, 55, 58, 91, 91, 91, 91, 1 , +DAY , 2022-09-18, Sun , 17324.2, , 0.7, , , , , 59, 59, 59, 60, 91, 91, 91, 91, , +DAY , 2022-09-19, Mon , 17330.7, 6.5, , , , , , 59, 60, 59, 61, 86, 88, 85, 91, , 2 +DAY , 2022-09-20, Tue , 17378.3, 47.6, , -7.0, 6.8, 14.7, 1.72, 45, 48, 45, 59, 91, 91, 87, 92, , 3 +DAY , 2022-09-21, Wed , 17383.5, 5.2, 18.2, -0.7, , , , 70, 63, 46, 70, 91, 91, 91, 92, 2 , 2 +DAY , 2022-09-22, Thu , 17383.5, , , , , , , 72, 72, 72, 72, 91, 91, 91, 91, 1 , +DAY , 2022-09-23, Fri , 17387.1, 3.6, 20.3, -0.7, , , , 100, 86, 71,100, 87, 87, 87, 88, 2 , 2 +DAY , 2022-09-24, Sat , 17794.9, 407.8, 25.9, -66.5, 6.1, 16.3, 16.36, 42, 40, 5,100, 97, 96, 92, 98, 1 , 5 +DAY , 2022-09-25, Sun , 17794.9, , 5.6, , , , , 50, 50, 43, 50, 97, 97, 97, 97, , diff --git a/examples/summary.day.xlsx b/examples/summary.day.xlsx index 6c636ca41f7ce9daf7f0016966eefe483b12bcd8..d4b688c03e8c5c93a1d8abfafc9d5fe48cab8082 100644 GIT binary patch delta 6659 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 str: return string -def get_address(lat, lon): +def get_address(split): """ get address """ - location_str = "" - if ADDRESS: - sleep(1) # do not abuse Nominatim, 1 request per second - geolocator = \ - Nominatim(user_agent="hyundai_kia_connect_monitor") - location = geolocator.reverse( - lat + ", " + lon) - location_str = ' "' + location.address + '"' + location_str = '' + if len(split) > 9: + location_str = split[LOCATION].strip() + return location_str @@ -112,7 +111,9 @@ def write_kml(outputfile, count, items, prev_items): voltage_12 = items[V12].strip() if voltage_12 == 'None': voltage_12 = '-1' - odometer = float(items[ODO].strip()) + odometer = to_float(items[ODO].strip()) + if odometer == 0.0: + return # bad line soc = items[SOC].strip() if soc == 'None': soc = '-1' @@ -129,16 +130,16 @@ def write_kml(outputfile, count, items, prev_items): name += ' ' coordinates = f'{lon}, {lat}' - address = get_address(lat, lon) + address = get_address(items) if address == '': description = f'SOC:{soc:>3}% 12V:{voltage_12:>3}% ODO:{odometer:8.1f}' # noqa pylint:disable=line-too-long else: - description = f'SOC:{soc:>3}% 12V:{voltage_12:>3}% ODO:{odometer:8.1f} Address:{address} ' # noqa pylint:disable=line-too-long + description = f'SOC:{soc:>3}% 12V:{voltage_12:>3}% ODO:{odometer:8.1f} Address: {address}' # noqa pylint:disable=line-too-long delta_odometer = 0 if len(prev_items) > 8: delta_odometer = round( - odometer - float(prev_items[ODO].strip()), 1) + odometer - to_float(prev_items[ODO].strip()), 1) if delta_odometer != 0.0: if delta_odometer > 0.0: description += ' (+' + str(delta_odometer) diff --git a/monitor.py b/monitor.py index 016f952..8aa0866 100644 --- a/monitor.py +++ b/monitor.py @@ -127,6 +127,7 @@ def get_append_data(): debug(f"check_and_force_update_vehicles: {FORCE_SECONDS}") manager.check_and_force_update_vehicles(FORCE_SECONDS) + line = '' for _, vehicle in manager.vehicles.items(): geocode = '' if USE_GEOCODE: @@ -134,7 +135,7 @@ def get_append_data(): # replace comma by semicolon for easier splitting geocode = ', ' + vehicle.geocode[0].replace(',', ';') - writeln( + line = ( str(vehicle.last_updated_at) + ', ' + str(vehicle.location_longitude) + ', ' + str(vehicle.location_latitude) + @@ -146,7 +147,17 @@ def get_append_data(): ', ' + str(vehicle.ev_battery_is_plugged_in) + geocode ) - retries = 0 # successfully end while loop + if 'None, None' in line: # something gone wrong, retry + log(f"Skipping Unexpected line: {line}") + else: + writeln(line) + + if 'None, None' in line: # something gone wrong, retry + retries -= 1 + log("Sleeping a minute") + time.sleep(60) + else: + retries = 0 # successfully end while loop except Exception as ex: # pylint: disable=broad-except log('Exception: ' + str(ex)) traceback.print_exc() diff --git a/requirements.txt b/requirements.txt index e56af9d..632d8b2 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,4 +1,3 @@ -geopy==2.2.0 hyundai_kia_connect_api==1.34.4 beautifulsoup4==4.11.1 python_dateutil==2.8.2 diff --git a/summary.py b/summary.py index 877de99..bd7f2b0 100644 --- a/summary.py +++ b/summary.py @@ -4,14 +4,18 @@ """ import sys import configparser +import traceback +import time from datetime import datetime, timedelta -from time import sleep from pathlib import Path from collections import deque import gspread from dateutil import parser -from geopy.distance import geodesic -from geopy.geocoders import Nominatim + + +def log(msg): + """log a message prefixed with a date/time format yyyymmdd hh:mm:ss""" + print(datetime.now().strftime("%Y%m%d %H:%M:%S") + ': ' + msg) def arg_has(string): @@ -22,7 +26,21 @@ def arg_has(string): return False -KEYWORD_LIST = ['trip', 'day', 'week', 'month', 'year', 'move', 'address', 'sheetupdate', '-trip', 'help', 'debug'] # noqa pylint:disable=line-too-long +def to_int(string): + """ convert to int """ + if "None" in string: + return -1 + return int(string) + + +def to_float(string): + """ convert to float """ + if "None" in string: + return 0.0 + return float(string) + + +KEYWORD_LIST = ['trip', 'day', 'week', 'month', 'year', 'sheetupdate', '-trip', 'help', 'debug'] # noqa pylint:disable=line-too-long KEYWORD_ERROR = False for kindex in range(1, len(sys.argv)): if not sys.argv[kindex].lower() in KEYWORD_LIST: @@ -30,7 +48,7 @@ def arg_has(string): KEYWORD_ERROR = True if KEYWORD_ERROR or arg_has('help'): - print('Usage: python summary.py [trip] [day] [week] [month] [year] [move] [address] [sheetupdate]') # noqa pylint:disable=line-too-long + print('Usage: python summary.py [trip] [day] [week] [month] [year] [sheetupdate]') # noqa pylint:disable=line-too-long exit() DEBUG = arg_has('debug') @@ -39,10 +57,6 @@ def arg_has(string): WEEK = len(sys.argv) == 1 or arg_has('week') or arg_has('-trip') MONTH = len(sys.argv) == 1 or arg_has('month') or arg_has('-trip') YEAR = len(sys.argv) == 1 or arg_has('year') or arg_has('-trip') -MOVES = arg_has('move') -ADDRESS = arg_has('address') -if ADDRESS and not TRIP and not MOVES: - TRIP = True SHEETUPDATE = arg_has('sheetupdate') if SHEETUPDATE: DAY = True @@ -58,10 +72,10 @@ def arg_has(string): monitor_settings = dict(config_parser.items('summary')) ODO_METRIC = monitor_settings['odometer_metric'].lower() -NET_BATTERY_SIZE_KWH = float(monitor_settings['net_battery_size_kwh']) -AVERAGE_COST_PER_KWH = float(monitor_settings['average_cost_per_kwh']) +NET_BATTERY_SIZE_KWH = to_float(monitor_settings['net_battery_size_kwh']) +AVERAGE_COST_PER_KWH = to_float(monitor_settings['average_cost_per_kwh']) COST_CURRENCY = monitor_settings['cost_currency'] -MIN_CONSUMPTION_DISCHARGE_KWH = float( +MIN_CONSUMPTION_DISCHARGE_KWH = to_float( monitor_settings['min_consumption_discharge_kwh']) SMALL_POSITIVE_DELTA = int( monitor_settings['ignore_small_positive_delta_soc']) @@ -97,7 +111,6 @@ def arg_has(string): T_VOLT12_AVG = 12 T_VOLT12_MIN = 13 T_VOLT12_MAX = 14 -T_MOVES = 15 # indexes to totals tuples T_DAY = 0 @@ -124,24 +137,15 @@ def init(current_day, odo, soc, volt12): # current_day, odo, charged_perc, discharged_perc, charges, trips, # elapsed_minutes, # soc_cur, soc_avg, soc_min, soc_max, - # 12v_cur, 12v_avg, 12v_min, 12v_max, - # moves + # 12v_cur, 12v_avg, 12v_min, 12v_max debug(f"init({current_day})") return ( current_day, odo, 0, 0, 0, 0, 0, soc, soc, soc, soc, # SOC% - volt12, volt12, volt12, volt12, # 12V% - 0 # moves + volt12, volt12, volt12, volt12 # 12V% ) -def to_int(string): - """ convert to int """ - if "None" in string: - return -1 - return int(string) - - def same_year(d_1: datetime, d_2: datetime): """ return if same year """ return d_1.year == d_2.year @@ -225,7 +229,7 @@ def print_output_queue(): def print_header_and_update_queue(): """print header and update queue""" - output=f" Period, date , info , odometer, delta {ODO_METRIC}, +kWh, -kWh, {ODO_METRIC}/kWh, kWh/100{ODO_METRIC}, cost {COST_CURRENCY}, SOC%CUR,AVG,MIN,MAX, 12V%CUR,AVG,MIN,MAX, #charges, #trips, #moves, Address" # noqa pylint:disable=line-too-long + output=f" Period, date , info , odometer, delta {ODO_METRIC}, +kWh, -kWh, {ODO_METRIC}/kWh, kWh/100{ODO_METRIC}, cost {COST_CURRENCY}, SOC%CUR,AVG,MIN,MAX, 12V%CUR,AVG,MIN,MAX, #charges, #trips, Address" # noqa pylint:disable=line-too-long print_output_and_update_queue(output) @@ -243,16 +247,6 @@ def get_address(split): if len(location_str) > 0: location_str = ' "' + location_str + '"' - if ADDRESS and len(location_str) == 0: - sleep(1) # do not abuse Nominatim, 1 request per second - geolocator = \ - Nominatim(user_agent="hyundai_kia_connect_monitor") - location = geolocator.reverse( - split[LAT].strip() + ", " + split[LON].strip() - ) - if len(location.address) > 0: - location_str = ' "' + location.address + '"' - return location_str @@ -263,6 +257,9 @@ def print_summary(prefix, current, values, split, factor): debug("CURR : " + str(current)) debug("VALUES: " + str(values)) odo = current[T_ODO] + if odo == 0.0: + return # bad line + delta_odo = round(odo - values[T_ODO], 1) * factor odo_str = '' if odo != 0.0: @@ -275,7 +272,6 @@ def print_summary(prefix, current, values, split, factor): t_discharged_perc = 0 t_charges = values[T_CHARGES] * factor t_trips = values[T_TRIPS] * factor - t_moves = values[T_MOVES] * factor t_elapsed_minutes = max(values[T_ELAPSED_MINUTES], 1) t_soc_cur = values[T_SOC_CUR] @@ -325,9 +321,6 @@ def print_summary(prefix, current, values, split, factor): t_trips_str = "" if SHOW_ZERO_VALUES or t_trips != 0: t_trips_str = float_to_string(t_trips) - t_moves_str = "" - if SHOW_ZERO_VALUES or t_moves != 0: - t_moves_str = float_to_string(t_moves) location_str = get_address(split) @@ -396,12 +389,9 @@ def print_summary(prefix, current, values, split, factor): }, { 'range': 'A20:B20', 'values': [["#Trips", f"{t_trips}"]], - }, { - 'range': 'A21:B21', - 'values': [["#Moves", f"{t_moves}"]], }]) else: - output=f"{prefix:18},{odo_str:9},{delta_odo_str:9},{charged_kwh_str:8},{discharged_kwh_str:9},{km_mi_per_kwh_str:7},{kwh_per_km_mi_str:10},{cost_str:10},{t_soc_cur:8},{t_soc_avg:3},{t_soc_min:3},{t_soc_max:3},{t_volt12_cur:8},{t_volt12_avg:3},{t_volt12_min:3},{t_volt12_max:3},{t_charges_str:9},{t_trips_str:9},{t_moves_str:9},{location_str}" # noqa pylint:disable=line-too-long + output=f"{prefix:18},{odo_str:9},{delta_odo_str:9},{charged_kwh_str:8},{discharged_kwh_str:9},{km_mi_per_kwh_str:7},{kwh_per_km_mi_str:10},{cost_str:10},{t_soc_cur:8},{t_soc_avg:3},{t_soc_min:3},{t_soc_max:3},{t_volt12_cur:8},{t_volt12_avg:3},{t_volt12_min:3},{t_volt12_max:3},{t_charges_str:9},{t_trips_str:9},{location_str}" # noqa pylint:disable=line-too-long print_output_and_update_queue(output) @@ -517,12 +507,19 @@ def print_summaries(current_day_values, totals, split, last): return totals -def keep_track_of_totals(values, split, prev_split, handle_moved): +def keep_track_of_totals(values, split, prev_split): """ keep_track_of_totals """ debug("keep track of totals") debug("prev_split: " + str(prev_split)) debug(" split: " + str(split)) + odo = to_float(split[ODO].strip()) + if odo == 0.0: + return values # bad line + prev_odo = to_float(prev_split[ODO].strip()) + if prev_odo == 0.0: + return values # bad line + t_odo = values[T_ODO] t_charged_perc = values[T_CHARGED_PERC] t_discharged_perc = values[T_DISCHARGED_PERC] @@ -535,26 +532,13 @@ def keep_track_of_totals(values, split, prev_split, handle_moved): t_volt12_avg = values[T_VOLT12_AVG] t_volt12_min = values[T_VOLT12_MIN] t_volt12_max = values[T_VOLT12_MAX] - t_moves = values[T_MOVES] - delta_odo = float(split[ODO].strip()) - float(prev_split[ODO].strip()) + delta_odo = max(0.0, odo - prev_odo) coord_changed = ( - float(split[LAT].strip()) != float(prev_split[LAT].strip()) or - float(split[LON].strip()) != float(prev_split[LON].strip()) + to_float(split[LAT].strip()) != to_float(prev_split[LAT].strip()) or + to_float(split[LON].strip()) != to_float(prev_split[LON].strip()) ) - moved = coord_changed or delta_odo - if coord_changed: - t_moves += 1 - if MOVES and handle_moved: - debug("Coordinate changed") - loc = (float(split[LAT].strip()), float(split[LON].strip())) - prev_loc = ( - float(prev_split[LAT].strip()), float(prev_split[LON].strip())) - t_odo = 0.0 - if ODO_METRIC == "km": - t_odo = -geodesic(loc, prev_loc).kilometers - elif ODO_METRIC == "mi": - t_odo = -geodesic(loc, prev_loc).miles + moved = coord_changed or delta_odo != 0.0 soc = to_int(split[SOC].strip()) prev_soc = to_int(prev_split[SOC].strip()) @@ -637,8 +621,7 @@ def keep_track_of_totals(values, split, prev_split, handle_moved): volt12, t_volt12_avg, t_volt12_min, - t_volt12_max, - t_moves + t_volt12_max ) debug(" after: " + str(values)) return values @@ -647,10 +630,13 @@ def keep_track_of_totals(values, split, prev_split, handle_moved): def handle_line(split, prev_split, totals, last): """ handle_line """ debug(f"handle_line: {split}, {prev_split}") + odo = to_float(split[ODO].strip()) + if odo == 0.0: + return totals # bad line current_day = parser.parse(split[DT]) current_day_values = init( current_day, - float(split[ODO].strip()), + odo, to_int(split[SOC]), to_int(split[V12])) t_day = totals[T_DAY] @@ -678,32 +664,15 @@ def handle_line(split, prev_split, totals, last): # take into account totals per line if not last: # skip keep_track_of_totals for last entry if DAY: - t_day = keep_track_of_totals(t_day, split, prev_split, False) + t_day = keep_track_of_totals(t_day, split, prev_split) if WEEK: - t_week = keep_track_of_totals(t_week, split, prev_split, False) + t_week = keep_track_of_totals(t_week, split, prev_split) if MONTH: - t_month = keep_track_of_totals(t_month, split, prev_split, False) + t_month = keep_track_of_totals(t_month, split, prev_split) if YEAR: - t_year = keep_track_of_totals(t_year, split, prev_split, False) - - if MOVES: - t_moves_init = init( - current_day, 0.0, to_int(split[SOC]), to_int(split[V12])) - t_moves = keep_track_of_totals( - t_moves_init, split, prev_split, True) - if t_moves[T_MOVES] > 0: - day_move_str = current_day.strftime("%Y-%m-%d") - day_move_info = current_day.strftime("%H:%M") - print_summary( - f"MOVE , {day_move_str:10}, {day_move_info:5}", - t_moves_init, - t_moves, - split, - 1.0 - ) - + t_year = keep_track_of_totals(t_year, split, prev_split) if TRIP: - t_trip = keep_track_of_totals(t_trip, split, prev_split, False) + t_trip = keep_track_of_totals(t_trip, split, prev_split) if t_trip[T_TRIPS] > 0: day_trip_str = current_day.strftime("%Y-%m-%d") day_info = current_day.strftime("%H:%M") @@ -768,11 +737,31 @@ def summary(): if SHEETUPDATE: - gc = gspread.service_account() - spreadsheet = gc.open("hyundai-kia-connect-monitor") - SHEET = spreadsheet.sheet1 + RETRIES = 2 + while RETRIES > 0: + try: + gc = gspread.service_account() + spreadsheet = gc.open("hyundai-kia-connect-monitor") + SHEET = spreadsheet.sheet1 + RETRIES = 0 + except Exception as ex: # pylint: disable=broad-except + log('Exception: ' + str(ex)) + traceback.print_exc() + RETRIES -= 1 + log("Sleeping a minute") + time.sleep(60) summary() # do the work if SHEETUPDATE: - print_output_queue() + RETRIES = 2 + while RETRIES > 0: + try: + print_output_queue() + RETRIES = 0 + except Exception as ex: # pylint: disable=broad-except + log('Exception: ' + str(ex)) + traceback.print_exc() + RETRIES -= 1 + log("Sleeping a minute") + time.sleep(60)