fome-fw/firmware
GitHub set-date Action 714fc286c8 Update date 2023-09-15 00:08:14 +00:00
..
ChibiOS@d46398838e chibios 2023-02-28 00:23:07 -08:00
ChibiOS-Contrib@63b50e410c pointing at offical eeprom fix 2022-02-08 10:44:37 -05:00
bootloader s 2023-08-27 16:44:01 -07:00
config Auto-generated configs and docs 2023-09-14 20:54:59 +00:00
console Revert "debug channels cleanup" 2023-09-13 15:40:21 -07:00
controllers Update date 2023-09-15 00:08:14 +00: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 Doxygen titles (#2728) 2021-05-22 22:10:58 +03:00
hw_layer debug channel cleanups 2023-09-13 12:23:27 -07:00
init semi-secret brz/frs pedal mode 2023-06-10 20:12:14 -07:00
integration rename 2jz -> toyota 3 tooth 2023-09-14 13:53:16 -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 Auto-generated configs and docs 2023-09-14 20:54:59 +00:00
util bench test delay parameter is not useful 2023-08-03 17:34:55 -07:00
.cproject refreshing Eclipse exclude list 2019-07-05 20:29:39 -04:00
.gitattributes is this the problem? 2020-06-16 14:19:40 -04:00
.gitignore simulator is happy! 2023-02-22 16:22:08 -08:00
CHANGELOG.md changelog 2023-08-25 11:25:53 -07:00
CHANGELOG.rusefi.md move changelog to "old" changelog 2023-04-11 12:10:00 -07:00
Doxyfile cleanup 2023-02-20 20:28:23 -08:00
DoxygenLayout.xml auto-sync 2015-07-10 09:01:56 -04:00
Makefile OpenBLT-based USB serial bootloader (#228) 2023-08-27 10:30:02 -07:00
common.mk moving sensors files a bit 2023-02-20 21:21:03 -05:00
cov_config.bat auto-sync 2015-07-10 09:01:56 -04:00
cov_run.bat auto-sync 2016-03-15 17:01:54 -04:00
coverity.yml auto-sync 2016-09-03 23:02:47 -04:00
egt2can.cpp poke 2023-02-02 21:50:02 -05:00
exception.txt auto-sync 2015-07-10 09:01:56 -04:00
gcc_version_check.c rename 2023-08-26 23:23:41 -07:00
gen_config.bat little comforts of life 2020-07-15 00:26:10 -04:00
gen_config.sh matching filenames 2023-09-06 14:45:47 -07:00
gen_config_board.bat Switch to Bash (#1585) 2020-07-09 10:27:20 -04:00
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 fome-ify 2023-02-21 02:29:22 -08:00
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 typos 2021-07-30 16:28:27 -04:00
gen_enum_to_string.sh x 2023-05-30 22:14:10 -07:00
gen_live_documentation.bat Switch to Bash (#1585) 2020-07-09 10:27:20 -04:00
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 cleanup 2023-02-20 20:28:16 -08:00
gen_trigger_images.bat rename test binary 2023-04-11 16:26:15 -07:00
generate_docs.bat auto-sync 2015-07-10 09:01:56 -04:00
get_performance_trace.bat rebranding 2023-03-17 15:29:35 -07:00
gitversion.mk simulator is happy! 2023-02-22 16:22:08 -08:00
global.h various crust 2023-03-03 02:20:51 -08:00
kill_for_coverity.c auto-sync 2015-07-10 09:01:56 -04:00
main.cpp Happy New Year 2022-12-31 14:12:17 -05:00
provide_gcc.sh cherry pick https://github.com/rusefi/rusefi/issues/5190 2023-03-21 11:03:41 -07:00
readme.md docs 2021-07-09 13:29:03 -04:00
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 more f429 business (#4679) 2022-10-20 00:59:39 -04:00
rusefi.mk include after main rules so that deps exist 2023-02-22 15:58:15 -08:00
rusefi_pch.mk Compile each project's PCH to a separate file to reduce developer friction. (#3505) 2021-11-08 15:52:58 -05:00
rusefi_rules.mk Fix master (#1134) 2020-02-08 16:34:29 -05:00
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.