Commit Graph

386 Commits

Author SHA1 Message Date
Matthew Kennedy 8235d8d765 Fully switch acc pedal to new sensors (#1212)
* proxy sensor

* header

* idle

* can

* settings

* remove old mocking

* remove old impl

* etb

* oops, gotta actually register it

* fix test

* structured bindings ftw!

* driver intent for stepper

* tear out old

* oops too much
2020-04-01 20:21:03 -04:00
Matthew Kennedy 67f01ff9c7 Friendlier pin names (#1233)
* enable TS error readout

* friendlier text for common errors

* improve comment

* friendlier ADC errors

* ign/inj names

* more pin names
2020-03-29 19:07:07 -04:00
Matthew Kennedy 0ac3e06149 cleanup extern mess (#1237)
* cleanup

* move outside define
2020-03-29 19:06:03 -04:00
rusefi c6ac5ed888 progress 2020-03-28 20:56:58 -04:00
rusefi 612131cbd5 #203 2020-03-26 19:22:14 -04:00
Matthew Kennedy b7033bbde9 Finally rename injector_central to bench_test (#1229)
* bench test rename

* rename consumers

* good lord what are all of these externs doing

* fix tests
2020-03-26 08:03:55 -04:00
Matthew Kennedy 2e12329199 Default to applyPinState (#1219)
* make applyPinState default

* consumers

* format
2020-03-25 18:14:09 -04:00
rusefi aa28127211 random code inspired by Ola 2020-03-24 19:50:04 -04:00
rusefi 3232aeb80c progress 2020-03-23 23:51:51 -04:00
rusefi bd4cf816e8 progress 2020-03-23 23:15:44 -04:00
rusefi a5c9457eb9 progress 2020-03-23 23:06:52 -04:00
rusefi ff663692c0 code style 2020-03-23 22:31:24 -04:00
rusefi 4d617aa0fe random header clean-up 2020-03-23 09:00:57 -04:00
Matthew Kennedy 61c4d0fe83 save some ram (#1211)
* remove dead stuff

* why store those pointers twice?
2020-03-22 19:06:29 -04:00
Matthew Kennedy adac5fba78 Control stepper with dual H-bridges (#1121)
* divorce stepper from hw

* oops

* ptr not ref

* hbridge stepper

* typo

* hook up twin h

* hook up hardware

* use config field

* hook up motor repo

* guard tests

* whoops

* ok fix for real

* ok that's the right thing

* do full stepping

Co-authored-by: Matthew Kennedy <matthew@mck-mbp-15.stagpad.local>
Co-authored-by: Matthew Kennedy <matthew@mck-mbp-15.local>
2020-03-10 15:18:29 -04:00
Matthew Kennedy 6d8eedf9ca Split out EtbHardware (#1168)
* start tear out motor

* fix

* nuke reconfig

* guard for test

* test fixing

* format, condense headers

* fix todos

* undo todo

* format
2020-03-03 17:56:50 -05:00
rusefi 923daaa3a1 ETB: expand automated testing #115 2020-02-22 23:18:02 -05:00
Matthew Kennedy b96d8f338e boost format & cleanup (#1126) 2020-02-05 06:47:31 +05:30
rusefi b47462b4de Three wire idle air valve #1122
ugly but should work to begin with
2020-02-04 01:22:04 -05:00
960 580e725d11 Boost pr (#1114)
* boost control

* cleanup

* Delete rusefi_config.txt

* Add files via upload

* Delete rusefi_config.txt

* Add files via upload

* Update rusefi.input

* Update boost_control.cpp
2020-02-02 03:56:21 -05:00
rusefi f834f99245 opening the door to boost controller! 2020-01-31 14:29:52 -05:00
rusefi f4d36f32fa VVT refactoring & assertions for VVT test 2020-01-31 01:49:10 -05:00
Matthew Kennedy 94e30b0b38 Separate stepper control logic from hardware (#1101)
* divorce stepper from hw

* oops

* ptr not ref

* ptr not ref

* whitespace

* null check
2020-01-15 02:18:15 -05:00
rusefi a222ecdfe1 happy new year unification 2020-01-13 21:57:43 -05:00
rusefi 20a6cf130f better method name 2020-01-10 02:02:22 -05:00
rusefi 63e3e84e08 happy new year 2020-01-08 00:02:40 -05:00
Matthew Kennedy 6703705a33 Pass action_s instead of callback/param (#1084)
* change action

* consumers

* fix test

* didn't mean to add those

* simplify

* fix simulator

* fix sim for real

* oy

* maybe this time the simulator will actually be fixed, for real

* don't rely on undefined behavior
2020-01-07 00:41:18 -05:00
rusefi afa5de2655 ETB documentation improvement? 2019-12-30 10:25:52 -05:00
rusefi 7577d81689 typo 2019-12-14 18:33:08 -05:00
rusefi 27f617686b progress towards ETB controller mocking 2019-12-13 13:52:34 -05:00
rusefi 2c296c0f18 etbActualCount logic to handle the scenario where only one ETB is present 2019-12-13 12:50:34 -05:00
rusefi f47a1a16d1 getting rid of boardConfiguration / binary compatible change 2019-12-11 17:48:55 -05:00
Matthew Kennedy 87ec74119d ETB Encapsulation & C++ Conventions (#1049)
* encapsulate etb stuff, c++ conventions

* remove DECLARE_ENGINE_PTR/INJECT_ENGINE_REFERENCE

* reduce include dependencies

* Revert "reduce include dependencies"

This reverts commit c529bbbf757cd9070f6e00616f84b1229eeb768e.

* Revert "remove DECLARE_ENGINE_PTR/INJECT_ENGINE_REFERENCE"

This reverts commit ca98b18cd4dae24b993d1263a18daf509dcd54b9.
2019-12-10 19:37:04 -05:00
rusefi 561986d3e4 The Big Refactoring of 2019: folder structure #723 2019-12-04 01:11:10 -05:00
andreika-git ae9c619c50 iacPidMultTbl + EFI_IDLE_PID_CIC + kinetis_hysteresis (#1043)
* rename EFI_IDLE_INCREMENTAL_PID_CIC -> EFI_IDLE_PID_CIC

* Impl. IacPidMultTable

* Kinetis: Trigger Comparator Hysteresis settings (+adaptive mode)
2019-12-04 00:37:32 -05:00
rusefi 431a21943b The Big Refactoring of 2019: folder structure #723 2019-12-03 23:52:44 -05:00
rusefi 07b7b62bca refactoring 2019-12-02 23:08:18 -05:00
rusefi ed9bae63af dual throttle re-init bugfix thank you andreika! 2019-12-01 09:39:34 -05:00
rusefi 34f53bd102 making things nicer with dual ETB settings 2019-11-30 17:38:33 -05:00
rusefi 149c1c09e8 refactoring 2019-11-30 16:49:40 -05:00
rusefi 2738fefa48 that's how we can move all fields one by one from boardConfiguration to engineConfiguration
my approach is to move fields from the bottom of BC struct
2019-11-30 10:24:37 -05:00
rusefi fd5c45ba46 all ETBs to run in same HW mode 2019-11-30 01:00:54 -05:00
rusefi 75b1a9e52c all ETBs to run in same HW mode
taking a step back and going to bed :(
2019-11-30 00:39:00 -05:00
rusefi 02f4e847f4 all ETBs to run in same HW mode 2019-11-30 00:25:33 -05:00
rusefi 349eac34de better state validation, better error codes 2019-11-29 23:41:26 -05:00
rusefi 4d6052c9f3 dual ETB seems to work! 2019-11-29 20:15:29 -05:00
rusEfi 13d4ae2169 dual ETB seems to work! 2019-11-29 19:06:50 -05:00
rusefi 73b3150d0f all ETBs to run in same HW mode 2019-11-29 19:02:12 -05:00
rusEfi 980a3d7086 all ETBs to run in same HW mode 2019-11-29 16:51:51 -05:00
rusefi 002a08316c steps towards dual ETB 2019-11-28 15:24:30 -05:00
rusefi 265727b7db steps towards dual ETB 2019-11-27 22:07:36 -05:00
andreika-git 7220735530 Starter relay + Hardcoded 'FSIO' + simulator fix (#1032)
* Starter Relay: gui + built-in FSIO impl.

* Hardcoded 'FSIO' replacement for RAM-limited boards

* fix simulator
2019-11-25 20:08:01 -05:00
Matthew Kennedy 0a7535fb1f Use templated array references (#1027)
* update defs

* consumers, use default params

* setArrayValues in tests

* floats

* test fixing
2019-11-22 23:27:24 -05:00
rusEfi c141d42a87 v12 and minor ETB 2019-11-22 23:27:03 -05:00
Matthew Kennedy 783ed572a9 inject interfaces to ETB, renaming (#1026)
* inject interfaces, renaming

* format

* null check

* that was a dumb typo

* fix indent
2019-11-22 20:53:54 -05:00
Matthew Kennedy 10a6f652d3 DC motor improvements (#1025)
* extract interface, comments, conform names

* fwd declare
2019-11-22 16:30:44 -05:00
rusefi 96443d079d following the pattern 2019-11-21 13:35:57 -05:00
rusEfi 7e78f077bc steps towards dual ETB 2019-11-21 00:49:38 -05:00
rusefi fb66dd1e7d making more code testable 2019-11-20 08:46:54 -05:00
rusefi 76a4e37c66 making more code testable 2019-11-20 02:18:17 -05:00
rusefi 4cebc85cbf refactoring 2019-11-20 01:35:08 -05:00
rusEfi 71511441c9 ETB docs 2019-11-18 22:25:07 -05:00
rusefi 412744d613 trying to fix integration tests
[java] 2019-11-10_13_31_42_194<EOT>: msg,FATAL error: PID::isSame invalid,
     [java] 2019-11-10_13_31_42_194<EOT>: postMessage EngineState: FATAL error: PID::isSame invalid
     [java] 2019-11-10_13_31_42_289<EOT>: Sending packet 4F 00 00 64 01
     [java] 2019-11-10_13_31_42_289<EOT>: output channels header: waiting for 2 byte(s)
     [java] 2019-11-10_13_31_42_290<EOT>: IncomingDataBuffer: 256 byte(s) arrived
     [java] 2019-11-10_13_31_42_290<EOT>: output channels body: waiting for 361 byte(s)
     [java] 2019-11-10_13_31_42_291<EOT>: IncomingDataBuffer: 107 byte(s) arrived
2019-11-10 16:07:13 -05:00
andreika-git add26866f5 Industrial PID Controller (#1002)
* Implement Industrial PID controller

* Test-Use PidIndustrial in alternator

* Meaningful unit-tests for PidIndustrial
2019-11-10 13:04:27 -05:00
rusefi a41b4c896d fine, taking care of more warnings 2019-11-06 19:53:09 -05:00
rusefi 30cfb96619 evil manual merge of https://github.com/DonaldBecker/rusefi 2019-11-05 20:07:55 -05:00
rusefi 9c3492043d progress towards #961 2019-11-04 22:44:52 -05:00
rusefi db24091933 60/2 VW trigger has running issue on 19/10/19 snapshot fix #986 2019-10-30 20:51:20 -04:00
rusefi 1602bdbebc steps towards #975 2019-10-18 19:45:32 -04:00
rusefi e73dd317b7 steps towards #975 2019-10-18 19:39:06 -04:00
rusefi eff84bcfeb steps towards #975 2019-10-18 18:54:32 -04:00
rusefi abfdfe6896 preparation for #961
more unified access to pre-calculated value
2019-10-10 08:25:58 -04:00
rusefi 2c8a2b61a5 preparation for #961
more unified access to pre-calculated value
2019-10-10 08:16:21 -04:00
rusefi f776513a5a preparation for #961
macro as a syntax sugar for method invocation
2019-10-10 07:28:52 -04:00
Matthew Kennedy 821ca6156f move tsOutputChannels to header (#970) 2019-10-08 21:02:51 -04:00
rusefi 15ae9b1580 fancy C++ s/NULL/nullptr/ 2019-10-08 01:26:35 -04:00
rusefi b6d22a007b docs 2019-09-29 15:14:08 -04:00
rusefi 5a59f1b232 fixing build 2019-09-29 14:22:51 -04:00
rusEfi 313e1da631 etbCalibrationOnStart 2019-09-29 14:00:04 -04:00
rusefi e6cc663e96 docs 2019-09-28 09:59:40 -04:00
rusEfi d73d668a9e new command 'etb_freq X' 2019-09-27 23:37:40 -04:00
rusEfi 80d222fc55 it's a cruel world 2019-09-27 23:01:47 -04:00
rusefi ba1d8eb512 idle&ETB progress 2019-09-26 00:02:47 -04:00
rusefi 3b44a70501 fixing build 2019-09-25 08:46:26 -04:00
rusefi 0d35b1ebba reducing hell in unit tests 2019-09-25 08:40:33 -04:00
rusefi b28710c908 HardFault related to auto r = convertFromInputValue(inputValue); #948
wow, it's a miracle anything ever worked!
2019-09-23 01:55:23 -04:00
rusefi cb02926c89 ETB is sticky around zero and does not want to close all the way #943
fixing build
2019-09-23 00:41:35 -04:00
rusEfi 97e0270b1c ETB is sticky around zero and does not want to close all the way #943 2019-09-22 23:28:11 -04:00
rusefi 42f085a4a0 ETB target is using integer values #945
now we have a unit test! now we can fix the issue :)
2019-09-22 17:58:27 -04:00
rusefi 3a30e9194c ETB target is using integer values #945
refactoring
2019-09-22 08:51:02 -04:00
rusefi 7710df4fed ETB target is using integer values #945
refactoring
2019-09-22 08:44:51 -04:00
rusEfi b46c5b4960 ETB target is using integer values #945
first we will write a unit test
2019-09-22 07:58:03 -04:00
rusEfi 0fd1f27e1b ETB target is using integer values #945
first we will write a unit test
2019-09-22 00:36:13 -04:00
rusEfi 53ae54e8cc ETB target is using integer values #945
first we will write a unit test
2019-09-22 00:16:46 -04:00
rusefi c44f76f2ed "set_etb" is now "set_etb_duty" 2019-09-21 22:15:34 -04:00
rusefi fdea935fc0 ETB idle bugfix: do not use once turned off 2019-09-21 01:22:21 -04:00
rusefi 757f8eb690 NB2 miata on Frankenso with ETB 2019-09-21 01:21:53 -04:00
rusefi 282cc41980 ETB pinEnableMode 2019-09-20 22:16:54 -04:00
rusefi 02fb27440e ETB to SD logs 2019-09-20 20:41:45 -04:00
rusefi 13b74d3d4d unit tests progress 2019-09-20 00:46:35 -04:00
rusefi d83ed085e8 unit tests progress 2019-09-19 22:56:54 -04:00
rusefi 0c9a8b58ca unit tests progress 2019-09-19 22:10:39 -04:00
rusefi fcbc26bf82 FSIO progress 2019-09-13 21:07:34 -04:00
rusefi f0427360bf Delayed A/C compressor switch #922 2019-09-11 20:46:50 -04:00
rusefi f56e2b3a46 instant RPM for idle control #925 2019-09-10 23:03:55 -04:00
rusefi 3389caa1e4 one step back :) instant RPM does not look right 2019-09-10 21:35:10 -04:00
rusefi d26262eb9f instant RPM for idle control #925 2019-09-09 19:41:41 -04:00
rusefi 50e0887c96 Delayed A/C compressor switch #922 2019-09-08 21:05:03 -04:00
rusefi ecd0fe6ab6 docs 2019-09-07 22:16:56 -04:00
rusefi bffeadf3f0 docs 2019-09-07 21:35:55 -04:00
rusefi a7e047489c BUGFIX: ETB idle should care about pedal position, not TPS position 2019-09-03 21:45:42 -04:00
rusefi 9bd1e417bb better field name 2019-09-03 19:12:04 -04:00
rusefi 15a7c1a2e6 make iTerm limits visible for idle RPM pid #913 2019-09-02 00:24:10 -04:00
rusefi 7c0688969f make iTerm limits visible for idle RPM pid #913 2019-09-02 00:19:06 -04:00
rusEfi d5dfc3e658 NB2 progress, ETB Live Docs progress 2019-09-01 19:37:58 -04:00
rusEfi 8f10e85d03 mock PPS voltage command in addition to mock PPS position
ETB pane progress
2019-09-01 17:35:43 -04:00
rusefi 6318f2ac38 Live Data: more Idle & ETB data points! 2019-09-01 15:46:40 -04:00
rusefi 2a8998f548 Live Data progress: using field's context 2019-09-01 15:01:57 -04:00
rusefi 8be592f3d4 Live Data progress 2019-09-01 13:56:46 -04:00
rusefi 9bbfc6de36 typo 2019-09-01 11:39:09 -04:00
rusefi e1a7ae0148 Live Data progress 2019-09-01 00:45:36 -04:00
rusEfi 3970881a09 ETB progress 2019-08-31 20:17:17 -04:00
rusEfi d696412312 reducing dead code 2019-08-31 17:59:18 -04:00
rusefi f533617b29 LiveData progress: isChanking & hasEtbPedalPositionSensor 2019-08-31 17:07:21 -04:00
andreika-git 54a97e799d mightResetPid docs (#912) 2019-08-31 15:38:01 -04:00
rusefi ca3d8098c0 NA6 pnp: automatic idle VS TPS #800 2019-08-30 18:17:10 -04:00
rusefi afdeecb87e progress towards idle unit test 2019-08-29 23:50:20 -04:00
rusefi 02610104d5 progress towards idle unit test 2019-08-29 00:10:47 -04:00
rusefi 7853cc1a7f refactoring towards idle unit test 2019-08-26 00:19:13 -04:00
rusEfi 92f371c121 new feature: check engine light to blink on trigger synchronization 2019-08-18 15:53:38 -04:00
rusefi fe43256c91 ETB live docs 2019-08-15 21:01:04 -04:00
rusefi 2b15ff31b1 dead code 2019-07-29 21:44:33 -04:00
rusefi ffdd37021f setDefaultBoardConfiguration shouldn't have Frankenso pinout #852 2019-07-24 21:15:18 -04:00
rusEfi 9795fe1d0c miata NA6 progress 2019-07-21 20:11:12 -04:00
rusefi 733478bd8a live docs for idle state 2019-07-21 18:34:37 -04:00
rusefi 360e33cb0f throttle pedal up switch for Miata NA6 2019-07-21 17:06:16 -04:00
rusefi 6ab2832c24 More than one aux pid #866
progress!
2019-07-12 08:31:38 -04:00
rusefi 0d36c508a1 More than one aux pid #866
progress!
2019-07-12 08:00:07 -04:00
rusefi 4633f032ed refactoring - type/macro name/docs 2019-07-12 07:48:28 -04:00
rusefi 2d9e669ad5 nano progress 2019-07-10 02:27:24 -04:00
Matthew Kennedy e4a0a0ae91 Fix some maf logic (#880)
* fix maf

* thank you vscode for mangling ANSI -> utf8
2019-07-10 09:14:47 +03:00
rusefi 1570f01f3a More than one aux pid #866
progress!
2019-07-09 16:24:14 -04:00
rusefi f8bc3baa91 refactoring: wider usage of new periodic task 2019-07-09 16:08:49 -04:00
Matthew Kennedy 0b52f5b542 Template-ize bin/value length for interpolation (#878)
* update consumers

* tests

* whitespace

* format
2019-07-09 21:16:36 +03:00
rusefi 9d004635e4 More than one aux pid #866
renaming this class since we will probably have two different implementations for two different cases
2019-07-08 03:35:41 -04:00
rusefi 1e80772904 Refactoring: OS access should be explicit #867 2019-07-05 19:00:44 -04:00
rusefi e309e223aa Refactoring: OS access should be explicit #867 2019-07-04 03:57:21 -04:00
rusefi 2164661274 undoing wrong fix & better fix for #805
also generator logging improvements
This reverts commit 96270758c9.
2019-06-30 14:28:47 -04:00
Matthew Kennedy 5054da67b7 Add ETB status gauges, fix gauge menus (#863)
* testing

* fix offsets

* consolidate ts config

* cleanup

* typo

* unwind some

* fix etb idle range setting

* unwind
2019-06-26 19:24:32 -04:00
rusefi 96270758c9 "Calibrate TPS" broken in TS fix #805 2019-06-17 22:00:34 -04:00
rusefi a86a2b0b53 ETB: TPS should be f(RPM, pedal) - target table fix #835
oooooops
2019-06-16 09:08:01 -04:00
rusefi f859079022 ETB: TPS should be f(RPM, pedal) - target table fix #835 2019-06-15 14:33:41 -04:00
rusefi 8ea5d687aa idle using ETB #783 2019-06-15 13:33:14 -04:00
Matthew Kennedy 89f59db75f Fix tunerstudio ratio vs. percent (#838)
* fix ratio vs pct

* fix idle cranking clt position

* fix defaults

* fix typo

* fix baro corr gauge

* baro default

* fix degree symbols

* fix testFuelMap

* fix testPlainCrankingWithoutAdvancedFeatures

* test testFasterEngineSpinningUp
2019-06-13 09:05:22 -04:00
rusefi e4231b0819 refactoring: extracting constant 2019-06-11 21:44:16 -04:00
rusefi 48796a6763 ETB: TPS should be f(RPM, pedal) #835 2019-06-10 23:57:35 -04:00
rusefi 2639214285 ETB: TPS should be f(RPM, pedal) #835 2019-06-10 23:38:44 -04:00
rusefi 998345ef9e unit tests should not have global context, including mock values 2019-05-27 15:56:12 -04:00
rusefi 32601867fe fix #802 2019-05-25 13:36:29 -04:00
rusefi 02cf200186 idle usability 2019-05-11 10:41:04 -04:00
rusefi 77b9685deb docs 2019-05-05 18:09:52 -04:00
rusefi 8c7d758b34 8888 usability 2019-05-05 12:48:04 -04:00
rusefi 2c24571ddb dreams of two ETBs 2019-05-05 12:02:42 -04:00
Matthew Kennedy ff5cdc05b6 rename enum (#791) 2019-05-05 00:53:24 -04:00
Matthew Kennedy bdae379c1b fix etb (#789) 2019-05-05 00:42:50 -04:00
rusefi 231d1af489 idle using ETB #783
configuration fields
2019-05-02 22:12:43 -04:00
rusefi f9802b8542 ETB pause feature - useful while playing on the bench 2019-04-26 13:46:58 -04:00
rusefi ea86d987c8 PID - fix dTime usages #776 2019-04-25 21:31:33 -04:00
rusefi 0a3a75ae79 PID - fix dTime usages #776 2019-04-25 18:49:16 -04:00
rusefi 0b0ef9e094 ETB progress 2019-04-24 23:46:49 -04:00
rusefi ea9624b472 docs 2019-04-24 20:47:38 -04:00
rusefi dacf305011 docs 2019-04-24 17:00:05 -04:00
rusefi f100a701a1 ETB progress 2019-04-23 23:18:48 -04:00
rusefi 14bee909bc docs 2019-04-21 12:24:31 -04:00
rusefi 3732eedbf0 The Big Refactoring of 2019: configuration version should not be a global variable #656 2019-04-15 21:09:43 -04:00
rusefi c018341591 ETB using tle7209 fix #746 2019-04-13 01:03:12 -04:00
rusefi 884c54a185 defined(__DOXYGEN__) ? #748 2019-04-12 22:07:03 -04:00
rusefi 8f4795d9fa smarter PWM API - need to pass arbitrary pointer 2019-04-12 20:15:18 -04:00
rusefi 54f83a431e smarter PWM API - need to pass arbitrary pointer 2019-04-12 20:11:27 -04:00
rusefi cad2297a72 smarter PWM API - need to pass arbitrary pointer 2019-04-12 20:06:09 -04:00
rusefi f554572c54 The Big Refactoring of 2019: folder structure #723 2019-04-09 23:01:45 -04:00
rusefi c0a8c2e80f The Big Refactoring of 2019: folder structure #723 2019-04-09 23:00:17 -04:00
rusefi 757832c91b The Big Refactoring of 2019: folder structure #723 2019-04-09 22:52:03 -04:00
dron0gus 69df5d4b50 gpios rework (#739)
* Some more include fixes for linux

* Pass cross-compile path through CROSS_COMPILE

* Lower-upper case conversion fixes for linux

* Rename unmarkPin to brain_pin_markUnused

This is part of external gpiochip integration

* Add gpio_pin prefix to markUsed and markUnused

To distinguish from similar functions using brain_pin

* pin_repository: add helpers

this is part of gpio chips integration

* efi_gpio: simplify getHwPin using brain_pin_is_onchip
2019-04-10 01:31:10 +02:00
rusefi df62ae6a4b The Big Refactoring of 2019: folder structure #723 2019-04-05 01:41:24 -04:00
rusefi c993e1f429 The Big Refactoring of 2019: folder structure #723 2019-04-05 01:02:34 -04:00