$EEHack Changelog

Fix bug that prevented 'silence extra modules' setting from working
Fix bug that sometimes prevented 'dump ram' setting from working
Stop counting errors during initial connection (unnatural serial events may be normal...)
Allow crazy values in linear voltage to AFR mapping (for lambada or edge cases)
Seperate left and right BLM values in the closed loop performance analyzer
Fix some tooltips and stuff
Parameter selector now defaults to 'Extended'
Add option to always draw the dashboard
Tabs in settings to make room for more settings in the future

New connection routine should help a lot for y-body users
Experimental B-Body connection method
Minor code cleanup
Some definition corrections
Add automatic transmission "line pressure" control
Add EGR duty cycle control
Add 'expert mode' button to the controller window

Restore loop/blm setting after using force AFR target
Try harder to re-prime the security key if it doesn't work
Add arbitrary text search in parameter selector, supports basic regexp
Enable variable acquisition priorities
More reliable packet rate display
Fix 'data age' display
Improve connectivity for b-body and y-body vehicles? (Experimental)

Fix some issues that can display stale data when moving log playback position

Enable multiple message support and datalog playback interface
New data elements:
 Over 1,000 parameters!
 External definition file, human readable
 Patch-level specific definitions possible
 ODM (onboard diagnostic module) full readout
 OBD-II transitional codes from corvette's secondary diagnostic module
Windows binary builds now compiled against QT5.6 with mingw32:
 Build can be replicated 100% with free software
 Improved memory usage during logging
 Potentially improved windows XP and windows 10 stability
 Improved 'high resolution dpi' display
 No more dependance on visual C++ libraries
Reworked analyzer to support multiple messages
Moved 'speed logging' to seperate message (more work to enable, but more correct)
New log format (old logs no longer load!!)
Seperate graphing module and improve with new selector window
Seperate memory io module, reneable BLM cell memory retrieval
Update to patch version 3.0:
 Mode 1, 2, and 3 comms from E-Side (thanks kur4o)
Remember 'read bin' as previous bin in flash window
Add graph log position indicator (double click to set position)
Add MAF AFGS average to idle analyzer
Fix some misc. analyzer bugs
Improve force AFR command (seems to work better now)
Add programming stability test mode to flash module
Add several 'custom parameters' to the dashboard

Complete UI reorganization into seperate modules
New concurrently threaded datastream manager for consistent performance
New independant log selection interface replaces old log-append behavior
Fix small bug that prevented clear DTC from working
Reworked serial comms for optimal performance
Enabled many features to be used while connected
Many core changes that I can't be bothered to explain...
Enable flash READ speed display, and reconfigure sliders
Fix major bugs in per-record timestamps
Fix possible crash if rpm=0
Many other misellaneous changes

Internal transitional release into threading

Improve flash write checksum verification
Major update to how timing is handled for improved stability
Faster writes due to better timing, larger block size, and more blank regions
Flash write speed display
More accurate packet rate display
Add selectable binary overlays to graph
Fix bug that prevented indicator lights from working
Fix bug in WOT/PE graphing when 'smooth lines' is enabled
Fix bug that prevented raw INT/BLM from being displayed on main tab
Fix linux filename bug, and improve behavior of file save/load cancellation
Integrate "compression" and "fill unused" to one function: "skip unused regions"
Fix one-off error in the size of the VIN field
Fix minor bug in autospark

Change font configuration and move some elements to improve display with high DPI
Add error counter and better log messages to flash routine
Improve debug log a bit, add select+copy button, clarify and add some new errors
Add pre-load "Reset Settings" option to start menu (command line option --reset)
Remove extraneous V6 code, no more support for that platform right now
Fix a network bug which could cause a crash on startup if auto-update is enabled
Increase some timing delays in the flash route by a few milliseconds 'just in case'
 Fix various bugs in graph refresh logic
 Add optional graph auto-refresh disable
 Add optional graph datapoint dots (slow...)
 Rearrange graphing window
 Remove graphing presets
 Add 'Save PNG' function per-graph
Knock Scope:
 Enlarge the display area
 Hover mouse over a knock event to get details
 Knock events are now time-domain (count increment per msec)

Main Display:
 * Add current AFR target to main display (requires patch upload)
 * Enable higher-rate logging (requires patch upload)
 * Optional percentage display for BLM/INT trims
 * Add shift actuator manual activitation (Gear selector) and force TCC On/Off
 * Add new version notification (optional)
 * Added knock warning, turns entire screen red for 200ms when knock occurs (optional)
 * Add options for temperature and vss display in metric/imperial
 * "Notes" are now in a seperate (resizable) window to free up space on the main window
 Less display overhead in main display, doesn't try to update anything that hasn't changed.
 General layout and appearance improvements
 Add auto trans TCC, P/N, and current gear to main tab
 Add Fan 1/2, A/C, AIR, and CCP actuator logging and override (on/off/auto)
 Added spark skew knock response, optionally removes 1 degree of spark when knock occurs
 Add optional conditional wideband display smoothing (see settings)
 Allow autospark to function without being enabled
 Fix 'dropped cyl' numbering error (again)
 Overlay closed loop status on top graph
 Overlay PE status on bottom graph
 Add preset buttons for common graph combos
 Display record position in graph tab
 Add some new graphing items
Flash Write/Read:
 * Enable flash write compression and blank filler
 * Improve timing to speed up writes (optional)
 * Enable EEHack passive patch upload during flash (Optional)
 * Automatically remember last written bin (Auto-compare!)
 Decrease time necessary to detect a flash erase failure and retry
 Fix "Fail to reset" error message appearing in false context
 Automatically disable compression, large block write, and improved timing in recovery mode
 Add "Clear" function to compare bin
 Syntax hiliting in flash read/write routine status
 Make rejection of bad checksum bin read optional (for debugging)
 * Fix percentage display precision and field width bugs
 * Optional precision decrease for percentage trims to increase readability
 * Analyze actual AFR to target AFR percentage (requires patch)
 * Add idle AFR analyzer (logs trim/afr during BLM cell 16)
 * Add high-accuracy mode to narrowband analyzer
 * Add BLM population analysis (for grid border optimization)
 * Wideband PE Fuel analyzer now charts per-map range
 * Colorize and improve appearance of knock map
 Add delay option to the wb afr analyzer (experimental)
 Filter out DFCO events from wideband analysis
 Provide installer and bundled libraries for windows
 Load log file from command line, or double click associated .eedata file
 Update QT libraries to 5.5.1 for windows binary builds
 Complete re-write of two-point wideband calibration system
 Possibly more functional approach to cylinder drop test
 Fix a few inaccuracies and rounding bugs in the wideband system
 Add preset buttons for common widebands
 Display actual wideband formula during config
 Prompt user on exit if there is unsaved log data or memos (optional)
 Prompt user to save/discard log buffer on load/save
 Improve data parser per-function to increase synchronzation between elements
 Move "Tests" to "Extended" tab, no need for seperate tests tab for now
 Add warning message before resetting all settings
 Add MODE4 command display to 'advanced' tab
 Save selected serial port. Move serial port to settings.
 Fix bug that omitted the last digit of the VIN.
 Fix a bug that momentarily froze the program when changing some settings.
 Correct flaw in temperature calculations
 Add donate button to 'about' tab (links to paypal)
 Add bug report button to 'about' tab (links to github)
 Make links in text followable in some text fields (opens external browser)

Fix rounding bug in wideband analyzer
Add timestamp display to main parameters tab

** FLASH WRITE is enabled!  (LT1 only)  Ready for mainstream testing!
** Add Pin D27 as an optional wideband input
** Add wideband open loop analyzer mode
Too many changes to flash routine to list....
Flash COMPARE fixed up a bit
Flash READ improvements
Much more verbose flash error reporting, and nicer looking logs
Allow custom commands to be sent when disconnected
Add debug logging window for serial comms
Re-enable CCM/BCM traffic when disconnecting
Increase to 1 decimal point of precision for temperature readouts
Fix bug that can cause a crash when using the debug window
Maybe fix the bug that causes crashes with autospark?
Re-enable mode3 during autospark

** Preliminary V6 support!  (Seperate binary..)
** Program VIN/Cal ID EEPROM
** READ bin fixes, incl. datastream stability pre-inspection, and autoconnect
** Fullscreen programming status
** More accurate temperature readings (use lookup table instead of linear calc)
** Flash Write almost ready, contact me to test it!  (Don't blame me if it bricks your ECM...)
Autoload VIN/Cal ID Number on connect
Way faster BLM cell memory retrieval
No more 'skip ram' option... just skip ram.  But include internal EEPROM...
Optionally disable the datastream while connected and just keep alive instead
Make more room in interface for more stuff
Fix bugs in custom command fields, increase length to theoretical maximum
Add button to clear the custom command log
Improve what happens when you disconnect and lots of stuff is enabled
Improve reaction to large amounts of connection errors
Improve M4 cancellation on disconnect
Remove redundant panic button (just disconnect instead, alt-enter.)
Remove useless CORRCL monitor
Resume normal comms on disconnect (adhere to aldl standards)

** Preliminary flash i/o capability, read only
Major changes to how event timing works
Major changes to how queries are made
** Better serializaton of mode4 request
** Two custom commands, with a log, hex entry
Add adjustable polling performance setting

Add fan, BLM, CL Update control
Now works with Corvette!  (I think)
More playing around with cylinder drop test accuracy
Improve graph ranging defaults
Improve data rate a bit by tweaking how even loops work
Improve connection reliability and success chance
Improve log playback and add traversal slider
Clicking graph now jumps to that record in the main data screen
Selecting new graph data automatically replots
Improve some defaults in analyzer
Improve MAP KPA calculation accuracy
Log timestamp now starts when you first connect, to avoid blank space
Fix BLM Reset button

Add very basic log playback
Add default log save/load directory
Autospark hystersis/blend (optional, disabled by default)
Add percentage display option in analyzer
Use MAP instead of RPM in cyl drop test for more accuracy
Add minimum MAP filter for PE analyzer
Add message 4 preliminary support, reads vin only for now
Rearrange the analyzer screen to make more space for stuff

** "More awesome than DataMaster_EE in every way unless you have a 4L60E"(tm)
** Add 4 line graphing.... whaaat!! (Actually wasn't that hard)
** Increase accuracy of RPM in tests and analyzer (use RPM16 everywhere)
Add reset BLM and clear DTC functions
Make some things more visible
All records are now timestamp sequential, even when loading multiple logs.
Misc. bug fixes, more analyzer tuning

** Fix improper cylinder numbering (again)
** Add wideband trim compensation
** Add wideband analyzer
** Add analyzer configurable data integrity
Improve many small analyzer issues
Move some settings to more logical places
Set smart defaults instead of rembering settings
Add progress bars for some long operations
More bug fixes and testing for log read/write
Better code in analyzer

** Fix raw log write and change format
** Implement raw log read
Code cleanup release!
Remove a bunch of useless config options (using combinations of them
could break things anyway, and they were just for testing)
Remove development cruft
Remove idle traffic checking, deemed completely unnecessary.

Fix bug in CSV log output
Fix bugs in analyzer
Add option for cell 16/17 ignore

Enable **autospark spark table skew system**
Enable **static data analyzer** for knock and NB AFR
Enable configurable **wideband input**
Raw log write (import not done yet)
Improve field display performance
Many small UI improvements
Improve connection stability and timing
Add manual connect/disconnect
Restrict some features to 'while disconnected' only

Less intrusive reconnect/disconnect behavior
Re-enable analyzer

Add "Memo" buttons system for tracking positive modifications in a
modifiable text field.
Add AFR target extended parameter
Huge update to cyl drop tests, base cylinder drop test on current
IAC opening (lower RPM for test), lock absolute spark, force no BLM
updates, clarify notes, better scaling of results.
Start building autospark interface
Lots of other small fixes.

Attempt to fix AFR behavior
Fix huge inversion bug in cyl. numbering
Export CSV data feature
Reset log feature
More improvements to UI unblocking and timing
More code cleanup
More available settings
Some logic changes

MAJOR code cleanup
Removed tons of scrap code
Add some icons and junk
Add new timing mode (optional)
Add keyboard shortcut for panic button
Add fairly useless CORRCL monitor
Add optional slower request serialization

Add extended parameter for BLM memory read
Remove some latency for added datalogging performance
More rearranging and bug fixing
Initial source release for Linux/FreeBSD

Make welcome warning a bit more friendly
Optional hack-keep-alive packet at interval
Enable AFR override after some fixes, thanks kur4o!
Added a settings window, we'll need one
Add two timing skew range modes (for bumpy roads)
Hover over BLM cell for a reminder chart

Add progress bar for cyl drop test.
Add credits/about screen.
Add some more tooltips.
Add warning about no ports detected.
Fix behavior if running a test while disconnected.

Fix bugs in cyl drop test.

Timing fixes.
Enable cyl drop test.

Corrections to reconnect behavior.

Initial Release.