N54Tech.com - International Turbo Racing Discussion
psblah psblah is offline
New Member
Posts: 26
Join Date: Oct 2013
Car: bmw
Default BHP estimator from JB4 Logs using work energy principle (python script) - 01-15-2019, 10:41 AM

Hi Guys,

I made a python script which uses the work energy principle to estimate power.

Short bullet points:

- Math might be wrong, don't think it is
- Still needs some work to get more accurate figures, consider it beta.
- At the moment it skips 3 data sets ahead and uses those for final and initial, then averages the rpm and plots it on a graph.
- More accurate would be bigger datasets but less resolution.
- Obscure results are usually wheelspin / deceleration, it tries to only log 100% pedal but meh.
- Not sure how accurate the work energy principle is as it ignores a lot of stuff, but what I think it will be good for is showing change in power, also, if terry is so inclined (and it proves useful), this could be integrated into the JB4 app with a little work.
- The bigger the log, the better the output.
- The second log I post below is a much longer, bigger log and seems like it might be closer to the truth
- I need to add better filtering to get rid of the crap datapoints

What i'm looking for:

People with measured power outputs and datalogs to compare this with what they have

To run, you'll need to understand python a little, get the modules and run it, either post your logs here and i'll run it for you, or I can try and help get you going.

How to use:

Install python
Install matplotlib module using pip
tkinter i think is core

Rename the .txt to .py
Run the python script
Pick a file
Output is shown

Cheers guys, hope this is useful to someone


Added a 'skip' variable. This is used for increasing the size of the dataset, on higher geared logs this seems to increase the accuracy as predicted, but decreases the res on lower gear logs
Attached Files
File Type: txt power_calc.txt (1.4 KB, 34 views)

Last edited by psblah; 01-15-2019 at 11:17 AM..
Reply With Quote
psblah psblah is offline
New Member
Posts: 26
Join Date: Oct 2013
Car: bmw
Default 01-15-2019, 11:00 AM

I'll add mine first.

Wasn't running very well as you can see
Attached Images

Last edited by psblah; 01-15-2019 at 11:15 AM..
Reply With Quote
BMWSwede BMWSwede is offline
New Member
Posts: 22
Join Date: Jun 2017
Car: 2007 BMW E91 335Xi
Default 01-15-2019, 02:27 PM

Why not just use virtual dyno?

2007 E91 335Xi M-Sport MT
FBO W In/outlets
Stock turbo @ 22psi
430 AWHP
Reply With Quote
psblah psblah is offline
New Member
Posts: 26
Join Date: Oct 2013
Car: bmw
Default 01-15-2019, 04:49 PM

Originally Posted by BMWSwede
Why not just use virtual dyno?
By the same logic, why not just use a real dyno...?

Because blah blah blah
Reply With Quote
LessIsMore's Avatar
LessIsMore LessIsMore is offline
Inner Circle Member
Posts: 1,095
Join Date: Aug 2012
Car: 2009 535i Sport SAT
Default 01-16-2019, 03:41 PM

Cool coding exercise, interested to see if yo ucan get it to work.
Wouldn't this need to be recoded from python to (whatever jb4 uses) for it to be integrated?
And then BMS has to deal with a lot of "hey, local dyno said I made 560 whp, but your app only showed 527 whp!" headache support emails.

2009 535i Sport - 548whp
Software :
JB4 G5 | MHD | Trebila Tune | XHP Stage 3
Hardware: VTT GC Lites | MFactory Helical LSD | Inlets | Outlet | VRSF 3" D-P's | VRSF 7" FMIC | Fuel-It! S2 LPFP | Fuel-It! TBI | BMS DCI | ER CP | Forge DV's | Koni FSD

Reply With Quote

Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

vBulletin Skin developed by: vBStyles.com
Copyright 2007 - 2018, N54tech.com