fome-fw/firmware
Matthew Kennedy 38c873252e
smarter injector duty cycle limiting (#215)
* config for duty cycle limiting

* implement timeout duty cycle limiting

* comment

* make overlapping injections actually work!

* missed one

* test

* call addFuelEvents from fast callback

* update comment about why we call it again in main trigger callback

* one more extra call

* undo addFuelEvents change

* cleanup

* minor encapsulation

* fix

* changelog

* dead obd code
2023-10-14 14:27:19 -07:00
..
ChibiOS@d46398838e
ChibiOS-Contrib@63b50e410c
bootloader probably fix hellen openblt 2023-10-03 19:01:58 -07:00
config Auto-generated configs and docs 2023-10-12 23:11:51 +00:00
console extract injection refactoring from #215 2023-10-12 18:00:33 -07:00
controllers smarter injector duty cycle limiting (#215) 2023-10-14 14:27:19 -07:00
development Revert "debug channels cleanup" 2023-09-13 15:40:21 -07:00
docs dead 2023-07-27 23:49:35 -07:00
ext delete case sensitive duplicate #89 2023-04-28 21:14:03 -07:00
ext_algo
hw_layer avoid stepper pin double init #265 2023-10-13 02:44:14 -07:00
init Flex sensor decodes temperature too #254 2023-09-18 11:43:59 -07:00
integration smarter injector duty cycle limiting (#215) 2023-10-14 14:27:19 -07:00
libfirmware@163cee4279 extract newton's method 2023-03-07 00:47:02 -08:00
pch tooth_logger.h -> pch 2023-05-30 22:41:20 -07:00
tunerstudio smarter injector duty cycle limiting (#215) 2023-10-14 14:27:19 -07:00
util __cplusplus 2023-10-06 14:54:34 -07:00
.cproject
.gitattributes
.gitignore
CHANGELOG.md smarter injector duty cycle limiting (#215) 2023-10-14 14:27:19 -07:00
CHANGELOG.rusefi.md move changelog to "old" changelog 2023-04-11 12:10:00 -07:00
Doxyfile
DoxygenLayout.xml
Makefile OpenBLT-based USB serial bootloader (#228) 2023-08-27 10:30:02 -07:00
common.mk
cov_config.bat
cov_run.bat
coverity.yml
egt2can.cpp
exception.txt
gcc_version_check.c rename 2023-08-26 23:23:41 -07:00
gen_config.bat
gen_config.sh matching filenames 2023-09-06 14:45:47 -07:00
gen_config_board.bat
gen_config_board.sh don't print the date in generated files, rely on git for that 2023-03-15 11:46:49 -07:00
gen_config_common.sh s 2023-07-19 15:05:29 -07:00
gen_config_default.sh
gen_default_everything.sh gen_enum_to_string is part of gen_live_documentation 2023-08-03 11:50:00 -07:00
gen_enum_to_string.bat
gen_enum_to_string.sh x 2023-05-30 22:14:10 -07:00
gen_live_documentation.bat
gen_live_documentation.sh gen_enum_to_string is part of gen_live_documentation 2023-08-03 11:50:00 -07:00
gen_ptrace_enums.bat rebranding 2023-03-17 15:29:35 -07:00
gen_signature.sh
gen_trigger_images.bat rename test binary 2023-04-11 16:26:15 -07:00
generate_docs.bat
get_performance_trace.bat rebranding 2023-03-17 15:29:35 -07:00
gitversion.mk
global.h various crust 2023-03-03 02:20:51 -08:00
kill_for_coverity.c
main.cpp
provide_gcc.sh cherry pick https://github.com/rusefi/rusefi/issues/5190 2023-03-21 11:03:41 -07:00
readme.md
release.md (es) 2023-04-11 16:21:35 -07:00
rusefi.cpp this button isn't useful as it just bricks the ECU 2023-08-26 23:29:21 -07:00
rusefi.h
rusefi.mk
rusefi_pch.mk
rusefi_rules.mk
setup_linux_environment.sh ant can go 2023-07-17 22:33:14 -07:00

readme.md

Doxygen

Q&A on source code

See also ../unit_tests

This directory contains the source code for the RusEFI firmware.

The ideal is that typical end users should be able to use pre-built firmware. They should not need to modify or even rebuild from the source code for basic use, but building from the source code provides the opportunity for optimization, supporting unexpected engine configurations, and specialized enhancements.

TL;DR

make PROJECT_BOARD=microrusefi PROJECT_CPU=ARCH_STM32F4

Environment

Rebuilding from source code requires this firmware, a modern C/C++ compiler for embedded ARM systems, and a platform that supports 'make' based builds.

See setup_linux_environment.sh

While many compilers have the potential to work, we suggest using the official ARM version of GCC available at launchpad.net.

Linux and MacOS systems should have the software development tools, primarily 'make', pre-installed or readily installed. MS-Windows requires selecting and installing a Unix-compatible system environment.

Note that the developers are volunteers, with varied motivations. These motivations often include using leading-edge language and build system concepts, requiring recent versions of tools. Should you encounter build problems, review the latest version of this document.