* adding VVT logging and trigger edge editing
fix missing define (temp fix?)
Revert "fix missing define (temp fix?)"
This reverts commit c6280f38ff69cc41278148a79c888736a71754b1.
fixes
* Create an additional logger screen in tunerstudio
Changes to create a third high speed logger window in tuner studio.
* Change variable name
Discord discussion requested compositeLogEnabled didn't do a test for false as the type is now a byte. Variable renamed to be compositeTriggerUsed and false replaced with 0. Variable name and values used should now make more logical sense.
* added more logging
Log the primary, secondary and third inputs as well as engine cycle on all composite logs. Still have 3 different logs to allow you to visualise which is the best way to present the information.
* Read analog values via CAN BUS
Allows reading of 16 analog signals via CAN-BUS. with selection of Edianness.
* Moved function
Function moved to improve data readability.
---------
Co-authored-by: Josh Stewart <josh@noisymime.org>
Decodes the 5 known Rover MEMS ECU patterns for Rover based engines. Covers A series, T series, O Series, K Series and V8. Doesn't currently cover sequential ignition for v6 or v8.
Co-authored-by: Josh Stewart <josh@noisymime.org>
Resolves#101
* Renix 44-2-2 & 66-2-2-2 initial version
coded, not tested yet, saving to secure code
* First working version on ardustim
* updates to trigger setup
* latest changes
* 66 tooth working but occasional short dwell
* staging before major rewrite
updating the primary trigger to look for 12th system tooth to increment toothCurrentCount after this checking
* updated working but with bad dwell/timing
code works but the timing and dwell are not accurate once rpm goes over 400rpm
* Renix code 1st release
updated code to do both 44 and 66 tooth within a single set of functions
* remove support for sequential for 44 tooth
Sequential (via cam) was added for 44 tooth to enable future expansion. This is interfering with the normal code on the first testers car.
* updated cam position
* remove Dev logging
* remove logging
* updates to trigger decoding
fixes to 66 tooth pattern and removal of secondary flag for 44 tooth decoder
* fixes to decoder - rpm double
* updates to support display cam tooth position
added code to display which teeth the cam tooth arrives on as VVT1 & 2 and as Aux0 and Aux1.
* Revert "updates to support display cam tooth position"
This reverts commit d2ace89ea7.
* fixes from update to latest speeduino firmware
* Add 4cyl semi-seq injector pairing option
* Add timestamp field to SD logs
* Fix soft and hard rev limiter (#813)
* Increase dwell limiter in RX-8 type ignition (#820)
Currently the dwell limiter calculation considers rotary ignition to have more than 1 pulse per revolution. This only holds true for FC/FD type ignition which is wasted spark correctly resulting in 2 pulses per revolution. RX-8 type ignition however is fully sequential so there is only 1 pulse per revolution. As a result the dwell limiter is being calculated too low.
This change fixes the issue by correctly assuming 1 pulse per revolution in RX-8 type ignition
* All tapers use byte counters (#746)
Fixes
Update idle.ino
* Correct variable size for MAPlast
* Fix issue with SD RPM threshold not correctly detecting on/off
* Reorganise Engine Protection UI
* Add low/high battery voltage indicator (#824)
Fixes#822
* Remove tacho output flags (#814)
* fix typos in code documentation (#816)
* fix typos in code documentation
* minor reverts
* fix typos in ini
Co-authored-by: Josh Stewart <josh@noisymime.org>
* Added Trigger for the Yamaha Vmax motorcycle, 1990 and up. (#823)
* Test 1
* Added the Vmax decoder option
* Added the Yamaha Vmax decoder
Co-authored-by: RempageR1 <unconfigured@null.spigotmc.org>
Co-authored-by: Josh Stewart <josh@noisymime.org>
* Allow for '?' command through legacy comms.
Fixes#821
* Added idle advance start threshold (#747)
* Added idle advance start threshold
On lower temp and/or on ethanol the engine need to crank more, without this my starter get a kick and the engine backfires.
This enable it only at 200 RPM below the target
* Use define to idle advance RPM threshold
Co-authored-by: Josh Stewart <josh@noisymime.org>
* Remove previousLoopTime - never used (#706)
* Simplify the corrections calculations using div100
* Fix the calculations dash figures when battery correction is applied to open time only
* PWM and on/off idle fixes/cleanup (#806)
* Idle fixes#1
* Idle fixes#2
Co-authored-by: Josh Stewart <josh@noisymime.org>
* Remove duplicate iacClosedLoopTable. Lookup idle target RPM @ 4Hz after CLT reading
* Fix validTrigger assignment in Vmax decoder
* Align TPS_rateOfChange scale. Potential fix for #773
* Enable semi sequential and wasted COP on half sync (#478)
* Semi/Full sequential mode
Semi sequential in case of absent phase input at crank, engine will almost aways start in semi sequential mode
Minimal code change at speeduino.ino
Fix RPM reading when in half sync
* Update with latest changes in master
* Less calls to change functions
See #478 chat history for details
* Semi/Full sequential mode
Semi sequential in case of absent phase input at crank, engine will almost aways start in semi sequential mode
Minimal code change at speeduino.ino
Fix RPM reading when in half sync
* Update with latest changes in master
* Less calls to change functions
See #478 chat history for details
* Add sync status to log
* Updates
Updated speeduino.ini
Updated updates.ino
* Fix error in half to full sync function
Co-authored-by: Josh Stewart <josh@noisymime.org>
* Fixes after merge with speeduino master
* improved debug on sync loss using VVTangle
* additional debug
uses aux channels for debug eg currentStatus.canin[2] these need removing from the full version. Also uses VVT1 pin for debug via VVT1_PIN_OFF() and VVT1_PIN_ON()
* fixes
* remove secondary trigger
* different logging
* Final Version
* added automated tests
* fixed fuel pump always being on
* fix build issues after merge with master
* Change how 44 or 66 tooth selected
Updated to work out 44 or 66 tooth decoder based on the number of cylinders, 4 cylinder = 44 tooth, 6 cylinder = 66 tooth
* Fix typo in ini
* Delete compile_commands.json
* Remove duplicate declarations
* Remove VVT code from other PR
* fix speeduino.ino
Remove unintended additions to speeduino.ino
---------
Co-authored-by: Josh Stewart <josh@noisymime.org>
Co-authored-by: Pasi Kemppainen <48950874+pazi88@users.noreply.github.com>
Co-authored-by: theKraid <37898397+theKraid@users.noreply.github.com>
Co-authored-by: Vitor Moreno B. Sales <vitor_boss@yahoo.com.br>
Co-authored-by: Corey-Harding <91717711+Corey-Harding@users.noreply.github.com>
Co-authored-by: Daniel Tobias <dantob@users.noreply.github.com>
Co-authored-by: RempageR1 <103254506+RempageR1@users.noreply.github.com>
Co-authored-by: RempageR1 <unconfigured@null.spigotmc.org>
Co-authored-by: tx_haggis <13982343+adbancroft@users.noreply.github.com>
Co-authored-by: Vitor Moreno B. Sales <vitor.m.benevides@outlook.com>
* Added Lambda option for EGO correction. Same fields, just another way to view and set them.
* Added Lambda option for Nitrous Leanest AFR. Same field, just another way to view and set it.
* Use separate afrProtectDeviationLambda constant memory-mapped onto afrProtectDeviation
* 3 decimal accuracy for Lambda
* Add default for afrProtectDeviationLambda
* Add decel enleanment feature
* Fix tps and map DOT scaling in TS.
* updates.ino
* Small bug fix.
* One more small bug fix.
* Update cancomms.ino
Cast tps/mapDOT as uint8 to cancomms to retain backwards compatibility
* Fix programmable outputs list.
* Fix programmable outputs in updates.ino
* Add abs around currentStatus.mapDOT
* 19.09.2021
* Final testing of AC Control, some idle features fixed
AC control feature added, better than the existing idle-up feature (which can still be used for other things, e.g. electrical load detection). Air conditioning is locked out with coolant temp, RPM high/low, and high TPS. So the A/C automatically cuts out when driving hard.
Idle step now works correctly with closed loop PWM, open loop PWM, and closed+open loop PWM. Untested with stepper motor, but no reason it shouldn't work.
* Fixed mistakenly incremented page sizes
* Initial changes as per HWright9
-Renamed engineRunSeconds to acAfterEngineStartDelay
-Formatted large if statements better
-Fixed acStartDelay overflow bug
-Improved readability of logic
* Final fixes as per HWright9's feedback
-Add high/low RPM lockout delay, similar to the high TPM lockout delay
-General tidy-up
* Added stand-alone fan, moved config data in EEPROM
-Added additional configurable stand-alone A/C fan output, for when there is dedicated cooling fan for the A/C compressor. This is independent of the engine cooling fan logic.
-Moved config storage in EEPROM to configPage9, as noisymime's SD card logging has used the (previously unused) bytes I had used in configPage13.
-Minor bug fix - rename Aux in 1-16 to Aux in 0-15
* Revert to current master branch - as of master commit 97f8ef795a
* A/C Control Re-Integrated from AC-Control-Clean-3 (@Corey-Harding). Tested & ready to merge.
Additionally, added @HazuTo25's lines into the update() routine to configure default A/C settings.
* Changed updates.ino to just set A/C to disabled
* Fix change reverted by mistake - master merge commit 73badbce8c
* Fix remaining mistakes from previous master merge
* Remove test statements left in by mistake
* define unusedBits
* Remove test statements left in by mistake
* Increase timing granularity to 0.1s
* idleUpRPMAdder
* Remove another line put in by mistake by auto merge
* idleUpRPMFixes
* Update speeduino.ino
* Tweak A/C idle up descriptions
* Tweak A/C TS descriptors again
* Fixed alignment bug that turned page 15 config values into gobbledegook.
This had the symptom of the A/C request never triggering, because when a pin was assigned in TS (e.g. I did 27), a completely different pin would be read from config15 (in my case 22 - connecting the button to pin 22 would work in this case, even though TS was set to 27).
* Fix bit count - should be 6 to match ini file
* Increase minimum RPM lockout granularity
* Change granularity of A/C minimum RPM lockout to 10 RPM; Inline some functions for readability
* Add static inline function prototypes to auxiliaries.h as per the style guide.
* Fixed page 15 merge errors
* Style changes to suit new pinIsUsed() checks in setPinMappings()
* Add PWM Fan Control Minimum Clamp Value when A/C Compressor Engaged
* Fix comment
* Fix bug with stand-alone fan initialisation
Pin was unable to be used in prog. I/O even if fan was disabled, because it was always initialised as an output even if it was disabled. Fixed in this commit.
* Correction to Fahrenheit temperature scaling
* Move A/C updates to correct next release
Co-authored-by: shiznit304 <62686180+shiznit304@users.noreply.github.com>
Co-authored-by: Josh Stewart <josh@noisymime.org>
Adds options in TunerStudio project settings to have default units
for fuel and oil pressure in bar. Adds gauge in kPa. This only
adds convertion from psi to bar, not affecting firmware.
Co-authored-by: Min <min@infcof.com>
* Implementing AFR protection
* Update globals.h
* Bug fixes and code refactoring
* Moved variables to prevent ODR
* Dialog for AFR protection
* Data size and math corrections
* Possibility to use either AFR or lambda
* Updated default AFR protection values
* No need to do multiplications due to existing RPMdiv100 variable
* The X100 multiplier was wrongfully removed
* Add defaults in updates.ino, minor formatting cleanups
Co-authored-by: Josh Stewart <josh@noisymime.org>