Commit Graph

251 Commits

Author SHA1 Message Date
rusefillc 644dabf1bc id array length should match class array length 2022-02-16 11:55:07 -05:00
rusefillc 0047805ce4 User board-specific terms in error messages #3886 2022-02-03 15:21:30 -05:00
rusefillc b900f7e5f2 User board-specific terms in error messages #3886
wow we are getting closer!
2022-02-03 15:01:26 -05:00
rusefillc 1b73e96152 User board-specific terms in error messages #3886 2022-02-03 14:27:47 -05:00
rusefillc fd712d50e1 User board-specific terms in error messages #3886
EFI_ADC_13 used multiple times in hellen121vag #2925

enforcing new constraint
2022-02-03 13:11:43 -05:00
rusefillc 4fb0e75d3c User board-specific terms in error messages #3886
just refactoring for now
2022-02-03 12:15:37 -05:00
Matthew Kennedy 10be2d5f40
Remove FSIO, byeeeeeeeee (#3865)
* vestigial config

* replace last functionality

* engine/board configs include

* files that didn't need to include this

* remove FSIO implementation

* stragglers

* random little bits

* s

* s

* ConfigDefinition

* jar

* s
2022-02-02 02:03:31 -05:00
rusefillc 3951d3236b assert that C and TS enum sizes match #3786 2022-01-12 21:28:33 -05:00
rusefillc 1990086c1c assert that C and TS enum sizes match #3786 2022-01-12 21:14:08 -05:00
rusefillc 08d6004ad3 fresh antlr 2022-01-11 16:39:47 -05:00
rusefillc 25ca48c408 Live Data progress 2022-01-06 17:58:59 -05:00
rusefillc 5b5597a653 reducing logging 2022-01-05 15:56:04 -05:00
rusefillc 3995d08bea reducing logging 2022-01-05 15:39:46 -05:00
rusefillc ed59d225ca live data progress 2022-01-05 01:34:48 -05:00
rusefillc a9b8fef332 more refactoring
'null' in header bugfix
2022-01-05 01:10:02 -05:00
rusefillc 9ed57e36cd more dead code & reducing static magic 2022-01-04 23:48:16 -05:00
rusefillc 2117738d13 dead test & clean-up 2022-01-04 23:34:32 -05:00
rusefillc 462d0742d5 refactoring - splitting class a bit further 2022-01-04 00:28:41 -05:00
rusefillc 26a70b8107 refactoring - splitting class a bit further 2022-01-04 00:25:49 -05:00
rusefillc c95948c143 refactoring - splitting class a bit 2022-01-04 00:17:09 -05:00
rusefillc f80601eb87 HellenNA8_96 config folder #3724
resiliency
2021-12-29 23:48:06 -05:00
rusefillc df354a338e clutch input via CAN #3605 2021-12-15 20:22:56 -05:00
rusefillc 5ed26f1ca1 Lua to read tsOutputs #3376 2021-12-14 22:28:41 -05:00
rusefillc 5854cbb75e Lua to read tsOutputs #3376 2021-12-14 16:04:39 -05:00
rusefillc 28449f3095 Lua to read tsOutputs #3376 2021-12-13 19:13:05 -05:00
rusefillc 0a7e2d04bd Lua to read tsOutputs #3376 2021-12-13 18:57:22 -05:00
rusefillc 09c81c6a2e generator refactoring 2021-12-11 04:42:56 -05:00
rusefillc 2656f4b7b7 generator refactoring 2021-12-11 04:31:54 -05:00
rusefillc 1b84bac3d5 generator refactoring 2021-12-11 04:04:15 -05:00
rusefillc 742d0918b2 code generator: unifying size logic 2021-12-11 03:50:28 -05:00
rusefillc 1177b48d2a fresh jar 2021-12-09 21:53:11 -05:00
rusefillc b890046f6e fresh jar 2021-12-09 17:41:46 -05:00
rusefillc e6e259c7d9 output channel name duplication fix #3681 2021-12-08 22:45:51 -05:00
Matthew Kennedy 1a618c9d6f
remove cache zip, rely on LazyFile instead (#3639)
* don't use cache.zip

* delete cache zip

* withConstructor

* I can't type

* bad merge

* jar

* jar
2021-12-01 23:00:54 -05:00
Matthew Kennedy 890cbd8cf2
remove define_constructor (#3640)
* no define_constructor

* jar

* sim needs live doc
2021-11-30 19:31:54 -05:00
Matthew Kennedy 61402dc52c
fix output channel dependency detection (#3634)
* s

* jar
2021-11-28 23:46:48 -05:00
rusefillc 5eb3e76fb8 why so many channels are hidden in debug ? #3614 2021-11-28 23:09:24 -05:00
rusefillc bd48f83b73 why so many channels are hidden in debug ? #3614 2021-11-28 22:21:32 -05:00
rusefillc 4c0631b2db automation around outputs section #197
datalog toolset
2021-11-28 17:55:33 -05:00
rusefillc 82397f149e Epic: Remove FSIO #2928 2021-11-28 17:31:38 -05:00
rusefillc 6a9a267314 automation around outputs section #197
datalog toolset
2021-11-28 17:04:46 -05:00
rusefillc 1bbe587716 automation around outputs section #197
datalog toolset
2021-11-28 14:40:16 -05:00
rusefillc 30ddb4fd22 automation around outputs section #197
datalog toolset
2021-11-28 14:10:13 -05:00
rusefillc 8674a8b830 automation around outputs section #197
datalog toolset
2021-11-28 13:57:56 -05:00
rusefillc d76d0f3326 automation around outputs section #197
refactoring: extract helper class & poke
2021-11-28 13:13:13 -05:00
rusefillc 650527b1af automation around outputs section #197 2021-11-27 00:36:14 -05:00
Matthew Kennedy cdd27abb09
turn on c++ 20 (#3579)
* set flags

* emit initializers

* jar
2021-11-19 22:19:34 -05:00
rusefillc 1268129028 better error handling 2021-11-18 19:33:20 -05:00
Matthew Kennedy 14953c55dd
new parser handles enum values (#3492)
* simplify

* poke to force generate

* enums

* jar

* jar

* poke

* prepends formatted

* prepends

* eol

* eol

* allow no endl at eof

* Revert "eol"

This reverts commit 022029faef338281b1a3551f82e46c4b6a7578a5.

* Revert "eol"

This reverts commit 6274502db740569235210916fde4ec84863d7fb3.
2021-11-11 23:09:39 -05:00
Matthew Kennedy a3c569e5f0
TS parser improvements, compatibility (#3479)
* scalar layout

* wrong name in comments

* better compatibility for tooltips starting with + or not

* s

* sort of handle signature

* only strip nested

* new parse can mostly read signature

* oops

* jar

* jar
2021-11-06 18:17:03 -04:00
Matthew Kennedy a38b3f00c3
Remove array typedef syntax (#3477)
* remove array typedef support completely

* extraneous semicolon

* binary
2021-11-06 09:12:43 -04:00
Scott Smith 16378dcf59
Convert existing tables to use the simpler 3d table definition style in rusefi_config.txt (#3473)
This fixes #3465.
2021-11-05 21:55:33 -04:00
Scott Smith eb781f38b4
Determine the correct mul/div for autoscale from the TS config line instead of specifying it twice. (#3470) 2021-11-05 19:26:25 -04:00
Scott Smith 8e5d65978a
Add 3d table support to the java config file parser. (#3464)
This removes the need to use custom for 3d tables.  Syntax (to avoid changing the ANTLR parser) is
to use 'x' instead of separate [], i.e.:
        uint16_t[HPFP_TARGET_SIZE x HPFP_TARGET_SIZE] hpfpTarget;;"kPa", 1, 0, 0, 65000, 0
2021-11-05 14:27:32 -04:00
Matthew Kennedy 980a7cc833
autoscale fields in generated structs (#3444)
* add to grammar

* parser

* parser

* example consumer

* build config tool

* commit the right jar
2021-11-02 18:59:19 -04:00
rusefillc a8b922b008 https://rusefi.com/forum/viewtopic.php?f=19&t=2177 2021-10-28 13:11:32 -04:00
rusefillc f48d568be7 https://rusefi.com/forum/viewtopic.php?f=19&t=2177 2021-10-28 12:40:34 -04:00
rusefillc 4192aee6de generate java enum from C enum? generate both C and java from yaml? #2102 2021-10-24 12:49:51 -04:00
rusefillc 3882d3d824 placing all logs into same folder 2021-10-23 20:18:09 -04:00
rusefillc 5d5b4f0d56 Trigger setup in TS is highly confusing #3401
rabbit hole: integrating enums with TS templating
2021-10-23 20:09:10 -04:00
rusefillc abadef0e96 enum reader progress 2021-10-20 22:01:50 -04:00
rusefillc 55a6de05ba validate field name duplicates at least sometimes 2021-10-16 23:02:06 -04:00
rusefillc 292173f818 progress - live doc generator works again! 2021-10-16 21:08:50 -04:00
rusefillc eb6db5e5a4 Whatever we call it, no matter how we do it - we need live data / remote view into rusEFI actual state #3353
dead code
2021-10-14 14:11:52 -04:00
David Holdeman 5582518a04
ConfigDefinition stuff (#2940)
* add check for empty string

* try catching duplicates, while allowing same id on a pin

* js brain

* fixes

* fixes

* comment out

* build

* bump submo

* comment
2021-07-09 22:07:07 -04:00
rusefi 9fcca87332 extra state validation is needed 2021-07-09 01:11:20 -04:00
rusefillc 7d7115d0d7 MRE same pin or not? #2897 2021-07-02 18:22:13 -04:00
rusefillc a27edf50fb H64 uses GPIOD_12 twice why does it not fail? #2877 2021-07-02 13:15:48 -04:00
Matthew Kennedy 12bd5bdf2b
new parse: read rusefi.input, write almost-working output ini! (#2851)
* fix offsets inside struct arrays

* style

* fix index writing for arrays of structs

* write TS context comments

* cleanup

* ts writer copies all lines input -> output

* Add _hex and _char definitions

* definition tostring

* replace variables

* wire up firing order replacement

* jar
2021-06-24 16:36:30 -04:00
David Holdeman 81d38068d8
Yaml parsing refactor (#2842)
* throw error on unknown class

* build

* refactor, first try

* fix some errors

* fix some errors

* fix some errors

* fix some errors

* fix some errors

* build

* start at one more

* checks, minor refactor

* try toString

* check for null, idk

* try throwing class not found error

* oh duh

* oh duh numba two

* oh duh numba three

* build

* switch to switch_inputs

* switch output to outputs

* try

* build

* break loop when found

* fix maybe

* add missing s

* fix a bug

* move nothingname check

* catch other class

* use PinType
2021-06-21 19:10:25 -04:00
Matthew Kennedy aa8bfe0020
parse enums (#2832)
* enums and definitions

* bad merge

* txt format

* endBit

* handle 1-size arrays

* strings

* fix auto enum

* hard code 0 and 1

* jar

* jar
2021-06-20 17:35:31 -04:00
Matthew Kennedy 6915efd500
config gen layout fixes (#2829)
* grammar and libs

* gitignore

* parsing

* allow empty line as root statement

* tolerate #if

* config def changes

* s

* ant build

* workaround

* compiled tool

* grammar for unions

* parse unions

* layout logic

* fix union alignment

* union in config

* enable definition resolve

* testing

* zero init behavior

* bit fields respect custom options

* ts prints arrays correctly

* ts prints structs correctly

* auto round numbers

* cleanup

* bad merge

* bad merge

* jar

* kick
2021-06-18 16:58:04 -04:00
Matthew Kennedy d57ea124a1
cleanup for easier ini compare (#2830)
* remove dot zero

* don't parse as double

* minor formatting

* Revert "don't parse as double"

This reverts commit f2427927f7df0f5fa27ed66c888009e3a3da8412.

* expect integer "1"

* jar
2021-06-18 15:43:16 -04:00
Matthew Kennedy e7e9ab0d5c
Antlr 2 (#2823)
* grammar and libs

* gitignore

* parsing

* allow empty line as root statement

* tolerate #if

* config def changes

* s

* ant build

* workaround

* compiled tool

* grammar for unions

* parse unions

* layout logic

* fix union alignment

* union in config

* jar

* comment

* jar

* jar

* no prefix on root struct

* stray space

* normalize some enums
2021-06-18 12:31:23 -04:00
Matthew Kennedy 2c6b8ae3c6
parse with antlr (#2747)
* grammar and libs

* gitignore

* parsing

* allow empty line as root statement

* tolerate #if

* config def changes

* s

* ant build

* workaround

* compiled tool

* console should not build config def tool

* ugh the dependency tree is insane

* this should fix hw ci

* console build

* console jenkins script

* test

* Revert "test"

This reverts commit 73f2da50f990bee9b51a1f919e8fcc6b06327d9a.

* throw on parse failure

* jar

* fix #2821

* comment
2021-06-16 17:07:05 -04:00
Matthew Kennedy 84368cae10
Config generator jar (#2716)
* fix test

* jar

* kick config

* guard stuff

* nmea

* nmea

* nmea

* c++ is type safe, which is good

* c++ is type safe
2021-05-17 12:32:59 +03:00
rusefillc 0c6ec8fb29 gen_config.sh code duplication #2451
David saw dead code
2021-05-11 22:00:36 -04:00
David Holdeman 550517eb6c
Fix config CI (#2638)
* add yaml to inputFiles

* add jar
2021-05-06 23:12:05 -04:00
rusefillc d10115ae5c h64 more better error handling 2021-05-01 15:40:27 -04:00
rusefillc 2181b05013 config definition better error handling 2021-05-01 15:12:39 -04:00
rusefillc 0594a5b305 field type into header comment 2021-04-26 17:51:29 -04:00
rusefillc 122fe16db7 is gen_config invoked too often now? #2387 2021-03-12 22:25:03 -05:00
rusefillc 06e05d821b is gen_config invoked too often now? #2387
unzip is complicated
2021-03-05 21:39:26 -05:00
rusefillc bc7ff44cb2 is gen_config invoked too often now? #2387
how about we do not trust anyone to properly handle EOL CRLF?
2021-03-05 20:35:53 -05:00
rusefillc 479938b57a cAsE of rusEFI 2021-03-02 22:14:06 -05:00
rusefi 40e9c4174f TS does not support zero length arrays? #2366 2021-02-16 17:25:52 -05:00
rusefillc 9fbf16ce08 code generator: better handing of array size 1 2021-02-08 23:47:48 -05:00
rusefillc 02f08808ef spaces into multiplication 2021-02-01 12:11:00 -05:00
Matthew Kennedy 622a47c70b
Remove whitespace (#2246)
* don't tab in fields

* jar
2021-01-27 15:44:52 -05:00
Matthew Kennedy bed6819d8b
normalize configuration grammar (#2240)
* modify grammar

* add missing typedefs

* these typedefs are easier to handle in the parser

* make the existing parser work with the changed format

* grumble grumble jar

* we can deal with this part later

* handle later

* deal with this later
2021-01-26 21:56:47 -05:00
David Holdeman 6ead64e512
New board pin-mapping system (#2231)
* convert mre mapping

* convert mre mapping

* funny stuff for GPIOA_5

* move class next to id

* rough draft

* update scripts

* fix some errors

* fix some errors

* try

* check against null

* try amp

* try

* try

* fix some errors

* update scripts

* fix maybe

* fix maybe 2

* fix maybe

* fix maybe

* fix

* try

* fix

* use .equals

* use StringBuilder

* use instanceof

* use .max

* remove getMaxValue

* Suppress Warning

* major optimization

* fix maybe

* off-by-one error

* move yaml file loop

* add j2 connector

* add pads yaml

* check for null or empty

* add AV pins to pads

* forgot class

* move registerpins out of loop

* fix typo

* rebase

* check if string

* convert frankenso

* convert frankenso

* tyop

* missing class

* copy mre to skel

* remove prometheus yaml

* remove kinetis yaml

* build configDefinition

* replace var with string

* slight refactor
2021-01-22 12:03:14 -05:00
rusefillc f55b3a0cdb Add #if/#else/#endif support to gen_config #1928 2020-11-05 08:04:04 -05:00
David Holdeman 8ebdf6fcdc
fix type mismatch (#1808)
* fix type mismatch

* comment

* change field

* switch to efitimesec16_t

* add typedef

* add type to configdefinition

* build
2020-09-19 17:17:44 -04:00
rusefi 88bedcb978 Tokenisation of multipler expressions #1735 2020-08-30 15:31:22 -04:00
rusefi 22a947d498 https://github.com/rusefi/web_backend/issues/97 2020-08-30 14:58:05 -04:00
rusefi 8bcc3aeb64 https://github.com/rusefi/web_backend/issues/73
toolset progress
2020-08-14 15:56:59 -04:00
rusefi 2b06b4a0fc Console commands are broken #1671 2020-08-05 19:51:43 -04:00
rusefi ce091f2778 progress 2020-08-04 23:18:35 -04:00
rusefi b4a8d25909 progress 2020-08-04 22:51:27 -04:00
rusefi af4dcc10f2 STRING support for java fields 2020-07-18 19:30:49 -04:00