Columns in white Tesla API. Columns is Yellow calculated. My car wasn't warming the battery during this charging.
Issues with the P=IV calc method
1.
Starting and stopping charging: My charge stopped part way through a measurement interval. So did it charge for 20 seconds or 40 seconds in that window. Say an App polls and takes readings at 07:55:00 and 08:00:00 (I wouldn't because Tesla's servers get very busy 'on the hour' and timeout). Car stopped charging 07:56:00. Does the app assume the car was or wasn't charging in that 5 minute? At 7kW that 4 minutes creates a variance of +/- 0.46 kWh. Similar issue when the car starts to charge and is ramping up.
2.
Variance. The calculation assumes a constant voltage and current in between the measurement intervals (which it won't be). Example 07:13 where Tesla and calc vary by c20%. There's no way around this other than poll more frequently (and there's no point - see conclusion).
3.
Measurement intervals/frequency/resolution. Mine were set at 1 min. I'd be surprised if these systems/Apps are polling at that rate for fear of Tesla firewalling them on rate limits (x lots of cars). Lower resolution = lower accuracy. I got a few duplicate records (sorry deleted in pic) which suggests Tesla's internal car/polling/logging/data transfer intervals aren't that frequent.
Over an entire charging session with 1 minute resolution, the P=IV method seems to be pretty close to Tesla's reported 'charge energy added', so I would use this instead of wasting time calculating it.
This doesn't answer how accurate the car's measurements are, or address charging overheads (one for scanmytesla?), it just says to me that the
charge_energy_added figure is as good as you will get from the car (without attaching measuring devices to the car).
I suspect TeslaFi's 'Added' is calculated from the increase in battery range and converting that back to kWh based on a calculated battery size. Example: my range increaed by 4.233% in this example. (If!) the battery is 75kWH that's 3.18kWh added (my battery got warmer). This method assumes (calculates) a battery size and has no idea as to the balance of the battery / battery temp / state of the BMS.