This commit is contained in:
Matthew Kennedy 2023-02-21 02:29:22 -08:00
parent 464333cd7d
commit 72acb81682
24 changed files with 1419 additions and 1596 deletions

View File

@ -71,202 +71,202 @@ jobs:
# Board configurations # Board configurations
- build-target: hellen72 - build-target: hellen72
folder: config/boards/hellen/hellen72 folder: config/boards/hellen/hellen72
ini-file: rusefi_hellen72.ini ini-file: fome_hellen72.ini
skip-rate: 90 skip-rate: 90
- build-target: hellen81 - build-target: hellen81
folder: config/boards/hellen/hellen81 folder: config/boards/hellen/hellen81
ini-file: rusefi_hellen81.ini ini-file: fome_hellen81.ini
skip-rate: 90 skip-rate: 90
- build-target: alphax-2chan - build-target: alphax-2chan
folder: config/boards/hellen/alphax-2chan folder: config/boards/hellen/alphax-2chan
ini-file: rusefi_alphax-2chan.ini ini-file: fome_alphax-2chan.ini
skip-rate: 0 skip-rate: 0
- build-target: alphax-4chan - build-target: alphax-4chan
folder: config/boards/hellen/alphax-4chan folder: config/boards/hellen/alphax-4chan
ini-file: rusefi_alphax-4chan.ini ini-file: fome_alphax-4chan.ini
- build-target: alphax-8chan - build-target: alphax-8chan
folder: config/boards/hellen/alphax-8chan folder: config/boards/hellen/alphax-8chan
ini-file: rusefi_alphax-8chan.ini ini-file: fome_alphax-8chan.ini
- build-target: harley81 - build-target: harley81
folder: config/boards/hellen/harley81 folder: config/boards/hellen/harley81
ini-file: rusefi_harley81.ini ini-file: fome_harley81.ini
skip-rate: 90 skip-rate: 90
- build-target: hellen88bmw - build-target: hellen88bmw
folder: config/boards/hellen/hellen88bmw folder: config/boards/hellen/hellen88bmw
ini-file: rusefi_hellen88bmw.ini ini-file: fome_hellen88bmw.ini
skip-rate: 90 skip-rate: 90
- build-target: hellen88bmw_avr - build-target: hellen88bmw_avr
folder: config/boards/hellen/hellen88bmw folder: config/boards/hellen/hellen88bmw
ini-file: rusefi_hellen88bmw.ini ini-file: fome_hellen88bmw.ini
skip-rate: 90 skip-rate: 90
- build-target: hellen-nb1 - build-target: hellen-nb1
folder: config/boards/hellen/hellen-nb1 folder: config/boards/hellen/hellen-nb1
ini-file: rusefi_hellen-nb1.ini ini-file: fome_hellen-nb1.ini
skip-rate: 90 skip-rate: 90
- build-target: hellen-gm-e67 - build-target: hellen-gm-e67
folder: config/boards/hellen/hellen-gm-e67 folder: config/boards/hellen/hellen-gm-e67
ini-file: rusefi_hellen-gm-e67.ini ini-file: fome_hellen-gm-e67.ini
skip-rate: 90 skip-rate: 90
- build-target: hellenNA8_96 - build-target: hellenNA8_96
folder: config/boards/hellen/hellenNA8_96 folder: config/boards/hellen/hellenNA8_96
ini-file: rusefi_hellenNA8_96.ini ini-file: fome_hellenNA8_96.ini
skip-rate: 90 skip-rate: 90
- build-target: hellenNA6 - build-target: hellenNA6
folder: config/boards/hellen/hellen64_miataNA6_94 folder: config/boards/hellen/hellen64_miataNA6_94
ini-file: rusefi_hellenNA6.ini ini-file: fome_hellenNA6.ini
skip-rate: 90 skip-rate: 90
- build-target: hellen128 - build-target: hellen128
folder: config/boards/hellen/hellen128 folder: config/boards/hellen/hellen128
ini-file: rusefi_hellen128mercedes.ini ini-file: fome_hellen128mercedes.ini
skip-rate: 50 skip-rate: 50
- build-target: hellen121vag - build-target: hellen121vag
folder: config/boards/hellen/hellen121vag folder: config/boards/hellen/hellen121vag
ini-file: rusefi_hellen121vag.ini ini-file: fome_hellen121vag.ini
skip-rate: 90 skip-rate: 90
- build-target: hellen121nissan - build-target: hellen121nissan
folder: config/boards/hellen/hellen121nissan folder: config/boards/hellen/hellen121nissan
ini-file: rusefi_hellen121nissan.ini ini-file: fome_hellen121nissan.ini
- build-target: hellen-honda-k - build-target: hellen-honda-k
folder: config/boards/hellen/hellen-honda-k folder: config/boards/hellen/hellen-honda-k
ini-file: rusefi_hellen-honda-k.ini ini-file: fome_hellen-honda-k.ini
- build-target: hellen154hyundai - build-target: hellen154hyundai
folder: config/boards/hellen/hellen154hyundai folder: config/boards/hellen/hellen154hyundai
ini-file: rusefi_hellen154hyundai.ini ini-file: fome_hellen154hyundai.ini
skip-rate: 90 skip-rate: 90
- build-target: frankenso_na6 - build-target: frankenso_na6
folder: config/boards/frankenso folder: config/boards/frankenso
ini-file: rusefi_frankenso_na6.ini ini-file: fome_frankenso_na6.ini
skip-rate: 90 skip-rate: 90
- build-target: mre_f4 - build-target: mre_f4
folder: config/boards/microrusefi folder: config/boards/microrusefi
ini-file: rusefi_mre_f4.ini ini-file: fome_mre_f4.ini
- build-target: mre_f4_no_openblt - build-target: mre_f4_no_openblt
folder: config/boards/microrusefi folder: config/boards/microrusefi
ini-file: rusefi_mre_f4.ini ini-file: fome_mre_f4.ini
- build-target: mre_f4_debug - build-target: mre_f4_debug
folder: config/boards/microrusefi folder: config/boards/microrusefi
ini-file: rusefi_mre_f4.ini ini-file: fome_mre_f4.ini
skip-rate: 95 skip-rate: 95
- build-target: mre_f4_recovery - build-target: mre_f4_recovery
folder: config/boards/microrusefi folder: config/boards/microrusefi
ini-file: rusefi_mre_f4.ini ini-file: fome_mre_f4.ini
skip-rate: 95 skip-rate: 95
- build-target: mre_f4_hardware_QC_special_build - build-target: mre_f4_hardware_QC_special_build
folder: config/boards/microrusefi folder: config/boards/microrusefi
ini-file: rusefi_mre_f4.ini ini-file: fome_mre_f4.ini
skip-rate: 90 skip-rate: 90
- build-target: mre_f7 - build-target: mre_f7
folder: config/boards/microrusefi folder: config/boards/microrusefi
ini-file: rusefi_mre_f7.ini ini-file: fome_mre_f7.ini
skip-rate: 90 skip-rate: 90
- build-target: prometheus_405 - build-target: prometheus_405
folder: config/boards/prometheus folder: config/boards/prometheus
ini-file: rusefi_prometheus_405.ini ini-file: fome_prometheus_405.ini
skip-rate: 90 skip-rate: 90
- build-target: prometheus_469 - build-target: prometheus_469
folder: config/boards/prometheus folder: config/boards/prometheus
ini-file: rusefi_prometheus_469.ini ini-file: fome_prometheus_469.ini
skip-rate: 90 skip-rate: 90
- build-target: proteus_f4 - build-target: proteus_f4
folder: config/boards/proteus folder: config/boards/proteus
ini-file: rusefi_proteus_f4.ini ini-file: fome_proteus_f4.ini
- build-target: proteus_f4_hardware_QC_special_build - build-target: proteus_f4_hardware_QC_special_build
folder: config/boards/proteus folder: config/boards/proteus
ini-file: rusefi_proteus_f4.ini ini-file: fome_proteus_f4.ini
- build-target: proteus_f7 - build-target: proteus_f7
folder: config/boards/proteus folder: config/boards/proteus
ini-file: rusefi_proteus_f7.ini ini-file: fome_proteus_f7.ini
- build-target: proteus_f7_hardware_QC_special_build - build-target: proteus_f7_hardware_QC_special_build
folder: config/boards/proteus folder: config/boards/proteus
ini-file: rusefi_proteus_f7.ini ini-file: fome_proteus_f7.ini
skip-rate: 90 skip-rate: 90
- build-target: proteus_h7 - build-target: proteus_h7
folder: config/boards/proteus folder: config/boards/proteus
ini-file: rusefi_proteus_h7.ini ini-file: fome_proteus_h7.ini
skip-rate: 90 skip-rate: 90
- build-target: proteus_legacy - build-target: proteus_legacy
folder: config/boards/proteus folder: config/boards/proteus
ini-file: rusefi_proteus_f7.ini ini-file: fome_proteus_f7.ini
skip-rate: 90 skip-rate: 90
- build-target: stm32f429_nucleo - build-target: stm32f429_nucleo
folder: config/boards/nucleo_f429 folder: config/boards/nucleo_f429
ini-file: rusefi_stm32f429_nucleo.ini ini-file: fome_stm32f429_nucleo.ini
- build-target: stm32f767_nucleo - build-target: stm32f767_nucleo
folder: config/boards/nucleo_f767 folder: config/boards/nucleo_f767
ini-file: rusefi_stm32f767_nucleo.ini ini-file: fome_stm32f767_nucleo.ini
skip-rate: 95 skip-rate: 95
- build-target: stm32h743_nucleo - build-target: stm32h743_nucleo
folder: config/boards/nucleo_h743 folder: config/boards/nucleo_h743
ini-file: rusefi_stm32h743_nucleo.ini ini-file: fome_stm32h743_nucleo.ini
skip-rate: 95 skip-rate: 95
- build-target: subaru_eg33_f7 - build-target: subaru_eg33_f7
folder: config/boards/subaru_eg33 folder: config/boards/subaru_eg33
ini-file: rusefi_subaru_eg33_f7.ini ini-file: fome_subaru_eg33_f7.ini
skip-rate: 50 skip-rate: 50
- build-target: f407-discovery - build-target: f407-discovery
folder: config/boards/f407-discovery folder: config/boards/f407-discovery
ini-file: rusefi_f407-discovery.ini ini-file: fome_f407-discovery.ini
skip-rate: 0 skip-rate: 0
- build-target: f429-discovery - build-target: f429-discovery
folder: config/boards/f429-discovery folder: config/boards/f429-discovery
ini-file: rusefi_f429-discovery.ini ini-file: fome_f429-discovery.ini
skip-rate: 95 skip-rate: 95
- build-target: core8 - build-target: core8
folder: config/boards/core8 folder: config/boards/core8
ini-file: rusefi_core8.ini ini-file: fome_core8.ini
skip-rate: 95 skip-rate: 95
- build-target: 48way - build-target: 48way
folder: config/boards/48way folder: config/boards/48way
ini-file: rusefi_48way.ini ini-file: fome_48way.ini
skip-rate: 95 skip-rate: 95
- build-target: atlas - build-target: atlas
folder: config/boards/atlas folder: config/boards/atlas
ini-file: rusefi_atlas.ini ini-file: fome_atlas.ini
skip-rate: 95 skip-rate: 95
- build-target: tdg-pdm8 - build-target: tdg-pdm8
folder: config/boards/tdg-pdm8 folder: config/boards/tdg-pdm8
ini-file: rusefi_tdg-pdm8.ini ini-file: fome_tdg-pdm8.ini
skip-rate: 95 skip-rate: 95
steps: steps:
@ -390,40 +390,40 @@ jobs:
if: ${{ github.event_name != 'push' || github.ref != 'refs/heads/master' && env.skip != 'true' && !inputs.lts }} if: ${{ github.event_name != 'push' || github.ref != 'refs/heads/master' && env.skip != 'true' && !inputs.lts }}
uses: actions/upload-artifact@v3 uses: actions/upload-artifact@v3
with: with:
name: rusefi_${{matrix.build-target}}.elf name: fome_${{matrix.build-target}}.elf
path: ./firmware/build/rusefi.elf path: ./firmware/build/rusefi.elf
- name: Upload build bin - name: Upload build bin
if: ${{ github.event_name != 'push' || github.ref != 'refs/heads/master' && env.skip != 'true' && !inputs.lts }} if: ${{ github.event_name != 'push' || github.ref != 'refs/heads/master' && env.skip != 'true' && !inputs.lts }}
uses: actions/upload-artifact@v3 uses: actions/upload-artifact@v3
with: with:
name: rusefi_${{matrix.build-target}}.bin name: fome_${{matrix.build-target}}.bin
path: ./firmware/deliver/rusefi*.bin path: ./firmware/deliver/rusefi*.bin
- name: Upload build hex - name: Upload build hex
if: ${{ github.event_name != 'push' || github.ref != 'refs/heads/master' && env.skip != 'true' && !inputs.lts }} if: ${{ github.event_name != 'push' || github.ref != 'refs/heads/master' && env.skip != 'true' && !inputs.lts }}
uses: actions/upload-artifact@v3 uses: actions/upload-artifact@v3
with: with:
name: rusefi_${{matrix.build-target}}.hex name: fome_${{matrix.build-target}}.hex
path: ./firmware/deliver/rusefi*.hex path: ./firmware/deliver/rusefi*.hex
- name: Upload build dfu - name: Upload build dfu
if: ${{ github.event_name != 'push' || github.ref != 'refs/heads/master' && env.skip != 'true' && !inputs.lts }} if: ${{ github.event_name != 'push' || github.ref != 'refs/heads/master' && env.skip != 'true' && !inputs.lts }}
uses: actions/upload-artifact@v3 uses: actions/upload-artifact@v3
with: with:
name: rusefi_${{matrix.build-target}}.dfu name: fome_${{matrix.build-target}}.dfu
path: ./firmware/deliver/rusefi*.dfu path: ./firmware/deliver/rusefi*.dfu
- name: Upload bundle - name: Upload bundle
if: ${{( github.event_name == 'push' && github.ref == 'refs/heads/master' && env.skip != 'true' ) || inputs.lts }} if: ${{( github.event_name == 'push' && github.ref == 'refs/heads/master' && env.skip != 'true' ) || inputs.lts }}
uses: actions/upload-artifact@v3 uses: actions/upload-artifact@v3
with: with:
name: rusefi_bundle_${{matrix.build-target}}.zip name: fome_bundle_${{matrix.build-target}}.zip
path: ./artifacts/rusefi_bundle*.zip path: ./artifacts/fome_bundle*.zip
- name: Upload autoupdate bundle - name: Upload autoupdate bundle
if: ${{( github.event_name == 'push' && github.ref == 'refs/heads/master' && env.skip != 'true' ) || inputs.lts }} if: ${{( github.event_name == 'push' && github.ref == 'refs/heads/master' && env.skip != 'true' ) || inputs.lts }}
uses: actions/upload-artifact@v3 uses: actions/upload-artifact@v3
with: with:
name: rusefi_bundle_${{matrix.build-target}}_autoupdate.zip name: fome_bundle_${{matrix.build-target}}_autoupdate.zip
path: ./artifacts/rusefi_bundle_${{matrix.build-target}}_autoupdate.zip path: ./artifacts/fome_bundle_${{matrix.build-target}}_autoupdate.zip

View File

@ -89,7 +89,7 @@ jobs:
- name: OpenOCD wipe & flash STM32 - name: OpenOCD wipe & flash STM32
working-directory: ./firmware working-directory: ./firmware
run: openocd -f "${{matrix.openocd-script}}" -c init -c targets -c "reset halt" -c "flash erase_sector 0 0 11" -c "flash write_image "deliver/rusefi.bin" 0x08000000" -c "reset run" -c "shutdown" run: openocd -f "${{matrix.openocd-script}}" -c init -c targets -c "reset halt" -c "flash erase_sector 0 0 11" -c "flash write_image "deliver/fome.bin" 0x08000000" -c "reset run" -c "shutdown"
- name: Generate Java (Antlr) - name: Generate Java (Antlr)
working-directory: ./java_tools working-directory: ./java_tools

View File

@ -16,7 +16,7 @@ endif
include rusefi_rules.mk include rusefi_rules.mk
# Define project name here # Define project name here
PROJECT = rusefi PROJECT = fome
PROJECT_DIR = . PROJECT_DIR = .
# Configure precompiled header # Configure precompiled header

View File

@ -18,7 +18,7 @@ To start the bootloader updater:
To update the firmware: To update the firmware:
- choose "Download to device" mode; - choose "Download to device" mode;
- select the firmware file (rusefi.hex). Note! ***Use only recent firmware builds with bootloader support!*** - select the firmware file (fome.hex). Note! ***Use only recent firmware builds with bootloader support!***
- you may select "verify" option to check - you may select "verify" option to check
- you may select "Jump to the user program" to automatically run the main firmware after the update. - you may select "Jump to the user program" to automatically run the main firmware after the update.
@ -39,7 +39,7 @@ Problem statement:
How it works, in two words: How it works, in two words:
- The bootloader requires a separate makefile because it's a separate binary executable with its own project settings and fileset. - The bootloader requires a separate makefile because it's a separate binary executable with its own project settings and fileset.
- Start firmware/bootloader/compile_bootloader.bat to compile the bootloader code. Use it only if bootloader modification is required. - Start firmware/bootloader/compile_bootloader.bat to compile the bootloader code. Use it only if bootloader modification is required.
- The compiled bootloader code is stored in bootloader/bootloader_generated.hxx and it can be included into the main firmware (build/rusefi.hex) if the bootloader support is enabled. - The compiled bootloader code is stored in bootloader/bootloader_generated.hxx and it can be included into the main firmware (build/fome.hex) if the bootloader support is enabled.
- The bootloader support is disabled by default (USE_BOOTLOADER=no). You can enable it by adding "USE_BOOTLOADER=yes" to Makefile or "SET USE_BOOTLOADER=yes" to your Windows compile batch-file. - The bootloader support is disabled by default (USE_BOOTLOADER=no). You can enable it by adding "USE_BOOTLOADER=yes" to Makefile or "SET USE_BOOTLOADER=yes" to your Windows compile batch-file.
- When USE_BOOTLOADER=yes, a special version of linker script is used: STM32F407xG_CCM_bootloader.ld. It shifts 'flash' memory address to 32kb (0x08008000), and clears a space for bootloader at the very beginning of the flash memory. It also adds section ".bl" for the bootloader code. - When USE_BOOTLOADER=yes, a special version of linker script is used: STM32F407xG_CCM_bootloader.ld. It shifts 'flash' memory address to 32kb (0x08008000), and clears a space for bootloader at the very beginning of the flash memory. It also adds section ".bl" for the bootloader code.
- The file bootloader_storage.c used to include the bootloader code into the firmware (using '.bl' section). - The file bootloader_storage.c used to include the bootloader code into the firmware (using '.bl' section).

View File

@ -15,14 +15,12 @@ mkdir deliver
#make -j$(nproc) DEBUG_LEVEL_OPT='-O2' $@ #make -j$(nproc) DEBUG_LEVEL_OPT='-O2' $@
#EXTRA_PARAMS="" #EXTRA_PARAMS=""
# mv build/rusefi.elf deliver/rusefi_no_asserts.elf
#mv build/rusefi.bin deliver/rusefi_no_asserts.bin
# this file is needed for DFU generation # this file is needed for DFU generation
#mv build/rusefi.hex deliver/rusefi_no_asserts.hex #mv build/fome.hex deliver/fome_no_asserts.hex
#echo "Release compilation results 1/2" #echo "Release compilation results 1/2"
#echo "TIMESTAMP $(date "+%D %T.%2N")" #echo "TIMESTAMP $(date "+%D %T.%2N")"
#ls -l build #ls -l build
#[ -e deliver/rusefi_no_asserts.hex ] || { echo "FAILED to compile NO ASSERTS version"; exit 1; } #[ -e deliver/fome_no_asserts.hex ] || { echo "FAILED to compile NO ASSERTS version"; exit 1; }
bash clean.sh bash clean.sh
echo "TIMESTAMP $(date "+%D %T.%2N")" echo "TIMESTAMP $(date "+%D %T.%2N")"
@ -30,14 +28,14 @@ EXTRA_PARAMS="-DDUMMY -DFIRMWARE_ID=\\\"default\\\""
make -j$(nproc) $@ make -j$(nproc) $@
EXTRA_PARAMS="" EXTRA_PARAMS=""
mv build/rusefi.elf deliver/rusefi.elf mv build/fome.elf deliver/fome.elf
# this file is needed for DFU generation # this file is needed for DFU generation
mv build/rusefi.hex deliver/rusefi.hex mv build/fome.hex deliver/fome.hex
# Keeping file in place since hw_test.bat would take it from current location # Keeping file in place since hw_test.bat would take it from current location
cp build/rusefi.bin deliver/rusefi.bin cp build/fome.bin deliver/fome.bin
echo Debug compilation results 2/2 echo Debug compilation results 2/2
echo "TIMESTAMP $(date "+%D %T.%2N")" echo "TIMESTAMP $(date "+%D %T.%2N")"
ls -l build ls -l build
[ -e deliver/rusefi.hex ] || { echo "FAILED to compile DEFAULT with DEBUG"; exit 1; } [ -e deliver/fome.hex ] || { echo "FAILED to compile DEFAULT with DEBUG"; exit 1; }
echo "clean_compile_two_versions: Looks good!" echo "clean_compile_two_versions: Looks good!"

View File

@ -1,7 +1,7 @@
@echo off @echo off
rm -rf build\rusefi.hex rm -rf build\fome.hex
rm -rf build\rusefi.bin rm -rf build\fome.bin
git submodule update --init git submodule update --init
@ -21,8 +21,8 @@ rem the important piece (pass external args if needed)
make %1 %2 %3 make %1 %2 %3
rem cd build rem cd build
rem if not exist rusefi.hex echo "compilation failed" rem if not exist fome.hex echo "compilation failed"
rem if not exist rusefi.hex exit -1 rem if not exist fome.hex exit -1
rem cd .. rem cd ..
if errorlevel 1 echo make compilation failed if errorlevel 1 echo make compilation failed
if errorlevel 1 exit -1 if errorlevel 1 exit -1

View File

@ -4,19 +4,19 @@ call compile.bat
rem svn info > ../firmware_binary/version.txt rem svn info > ../firmware_binary/version.txt
rem cp config/features.h ../firmware_binary rem cp config/features.h ../firmware_binary
rem cp build/rusefi.hex ../firmware_binary rem cp build/fome.hex ../firmware_binary
rem cp build/rusefi.elf ../firmware_binary rem cp build/fome.elf ../firmware_binary
rem cp tunerstudio/rusefi.ini ../firmware_binary rem cp tunerstudio/fome.ini ../firmware_binary
rem cd ../firmware_binary rem cd ../firmware_binary
rem del firmaware_binary.zip rem del firmaware_binary.zip
rem 7z a firmaware_binary.zip rusefi.hex rusefi.ini features.h flash.bat rem 7z a firmaware_binary.zip fome.hex fome.ini features.h flash.bat
rem cd ../firmware rem cd ../firmware
echo Looking at size echo Looking at size
arm-none-eabi-size --format=berkeley "build\rusefi.elf" arm-none-eabi-size --format=berkeley "build\fome.elf"
echo Compiler gcc version echo Compiler gcc version
arm-none-eabi-gcc -v arm-none-eabi-gcc -v

View File

@ -14,7 +14,7 @@ cd ../../..
mkdir -p .dep mkdir -p .dep
# todo: start using env variable for number of threads or for '-r' # todo: start using env variable for number of threads or for '-r'
make -j$(nproc) -r PROJECT_BOARD=$PROJECT_BOARD PROJECT_CPU=$PROJECT_CPU make -j$(nproc) -r PROJECT_BOARD=$PROJECT_BOARD PROJECT_CPU=$PROJECT_CPU
[ -e build/rusefi.hex ] || { echo "FAILED to compile by $SCRIPT_NAME with $PROJECT_BOARD $DEBUG_LEVEL_OPT and $EXTRA_PARAMS"; exit 1; } [ -e build/fome.hex ] || { echo "FAILED to compile by $SCRIPT_NAME with $PROJECT_BOARD $DEBUG_LEVEL_OPT and $EXTRA_PARAMS"; exit 1; }
if [ "$USE_OPENBLT" = "yes" ]; then if [ "$USE_OPENBLT" = "yes" ]; then
make openblt PROJECT_BOARD=$PROJECT_BOARD PROJECT_CPU=$PROJECT_CPU make openblt PROJECT_BOARD=$PROJECT_BOARD PROJECT_CPU=$PROJECT_CPU
[ -e build-openblt/openblt_$PROJECT_BOARD.hex ] || { echo "FAILED to compile OpenBLT by $SCRIPT_NAME with $PROJECT_BOARD"; exit 1; } [ -e build-openblt/openblt_$PROJECT_BOARD.hex ] || { echo "FAILED to compile OpenBLT by $SCRIPT_NAME with $PROJECT_BOARD"; exit 1; }
@ -31,20 +31,20 @@ mkdir -p deliver
rm -f deliver/* rm -f deliver/*
echo "$SCRIPT_NAME: invoking hex2dfu for incremental rusEFI image" echo "$SCRIPT_NAME: invoking hex2dfu for incremental rusEFI image"
$HEX2DFU -i build/rusefi.hex -C 0x1C -o build/rusefi.dfu $HEX2DFU -i build/fome.hex -C 0x1C -o build/fome.dfu
if [ "$USE_OPENBLT" = "yes" ]; then if [ "$USE_OPENBLT" = "yes" ]; then
# this image is suitable for update through bootloader only # this image is suitable for update through bootloader only
# do not deliver update images in any format that can confuse users # do not deliver update images in any format that can confuse users
#cp build/rusefi.bin deliver/rusefi_update.bin #cp build/fome.bin deliver/fome_update.bin
#cp build/rusefi.dfu deliver/rusefi_update.dfu #cp build/fome.dfu deliver/fome_update.dfu
#cp build/rusefi.hex deliver/rusefi_update.hex #cp build/fome.hex deliver/fome_update.hex
# srec is the only format used by OpenBLT host tools # srec is the only format used by OpenBLT host tools
cp build/rusefi.srec deliver/rusefi_update.srec cp build/fome.srec deliver/fome_update.srec
else else
# standalone images (for use with no bootloader) # standalone images (for use with no bootloader)
cp build/rusefi.bin deliver/ cp build/fome.bin deliver/
cp build/rusefi.dfu deliver/ cp build/fome.dfu deliver/
fi fi
# bootloader and composite image # bootloader and composite image
@ -58,9 +58,9 @@ if [ "$USE_OPENBLT" = "yes" ]; then
cp build-openblt/openblt_$PROJECT_BOARD.dfu deliver/openblt.dfu cp build-openblt/openblt_$PROJECT_BOARD.dfu deliver/openblt.dfu
#cp build-openblt/openblt_$PROJECT_BOARD.hex deliver/openblt.hex #cp build-openblt/openblt_$PROJECT_BOARD.hex deliver/openblt.hex
rm -f deliver/rusefi_openblt.dfu rm -f deliver/fome_openblt.dfu
echo "$SCRIPT_NAME: invoking hex2dfu for composite rusEFI+OpenBLT image" echo "$SCRIPT_NAME: invoking hex2dfu for composite rusEFI+OpenBLT image"
$HEX2DFU -i build-openblt/openblt_$PROJECT_BOARD.hex -i build/rusefi.hex -C 0x1C -o deliver/rusefi.dfu -b deliver/rusefi.bin $HEX2DFU -i build-openblt/openblt_$PROJECT_BOARD.hex -i build/fome.hex -C 0x1C -o deliver/fome.dfu -b deliver/fome.bin
#todo: how to create 'signed' hex and srec? Do we need? #todo: how to create 'signed' hex and srec? Do we need?
fi fi

View File

@ -20,7 +20,7 @@ BOARD_DIR=config/boards/${BOARDNAME}
INI="rusefi_${SHORT_BOARDNAME}.ini" INI="fome_${SHORT_BOARDNAME}.ini"

View File

@ -1 +1 @@
st-link_cli -c SWD ur -P build\rusefi.hex -Rst -Run st-link_cli -c SWD ur -P build\fome.hex -Rst -Run

View File

@ -3,5 +3,5 @@
rem on linux that would be rem on linux that would be
rem dfu-util -a 0 -D rusefi_no_asserts.dfu -R rem dfu-util -a 0 -D rusefi_no_asserts.dfu -R
"../misc/install/STM32_Programmer_CLI/bin/STM32_Programmer_CLI.exe" -c port=usb1 -w deliver/rusefi.hex --verify --start 0x08000000 "../misc/install/STM32_Programmer_CLI/bin/STM32_Programmer_CLI.exe" -c port=usb1 -w deliver/fome.hex --verify --start 0x08000000

View File

@ -3,5 +3,5 @@
rem on linux that would be rem on linux that would be
rem dfu-util -a 0 -D rusefi_no_asserts.dfu -R rem dfu-util -a 0 -D rusefi_no_asserts.dfu -R
"../misc/install/STM32_Programmer_CLI/bin/STM32_Programmer_CLI.exe" -c port=usb1 -w deliver/rusefi.bin 0x08000000 --verify --start 0x08000000 "../misc/install/STM32_Programmer_CLI/bin/STM32_Programmer_CLI.exe" -c port=usb1 -w deliver/fome.bin 0x08000000 --verify --start 0x08000000

View File

@ -6,5 +6,5 @@ cd ../misc/install
[ -e openocd/openocd.exe ] || { echo "openocd/openocd.exe NOT FOUND"; exit 1; } [ -e openocd/openocd.exe ] || { echo "openocd/openocd.exe NOT FOUND"; exit 1; }
./openocd/openocd.exe -f openocd/stm32f4discovery.cfg -c "program ../../firmware/build/rusefi.bin verify reset exit 0x08000000" ./openocd/openocd.exe -f openocd/stm32f4discovery.cfg -c "program ../../firmware/build/fome.bin verify reset exit 0x08000000"

View File

@ -5,5 +5,5 @@ cd ../misc/install
if not exist openocd/openocd.exe echo openocd/openocd.exe NOT FOUND if not exist openocd/openocd.exe echo openocd/openocd.exe NOT FOUND
if not exist openocd/openocd.exe exit -1 if not exist openocd/openocd.exe exit -1
openocd\openocd -f openocd/st_nucleo_f7.cfg -c "program ../../firmware/build/rusefi.bin verify reset exit 0x08000000" openocd\openocd -f openocd/st_nucleo_f7.cfg -c "program ../../firmware/build/fome.bin verify reset exit 0x08000000"

View File

@ -5,5 +5,5 @@ cd ../misc/install
if not exist openocd/openocd.exe echo openocd/openocd.exe NOT FOUND if not exist openocd/openocd.exe echo openocd/openocd.exe NOT FOUND
if not exist openocd/openocd.exe exit -1 if not exist openocd/openocd.exe exit -1
openocd\openocd -f openocd/st_nucleo_h743zi.cfg -c "program ../../firmware/build/rusefi.bin verify reset exit 0x08000000" openocd\openocd -f openocd/st_nucleo_h743zi.cfg -c "program ../../firmware/build/fome.bin verify reset exit 0x08000000"

View File

@ -1,7 +1,7 @@
#!/bin/bash #!/bin/bash
echo "This script reads rusefi_config.txt and produces firmware persistent configuration headers" echo "This script reads rusefi_config.txt and produces firmware persistent configuration headers"
echo "The storage section of rusefi.ini is updated as well" echo "The storage section of fome.ini is updated as well"
rm -f gen_config.log rm -f gen_config.log
rm -f gen_config_board.log rm -f gen_config_board.log

View File

@ -20,7 +20,7 @@ SHORT_BOARDNAME=$2
if [ -n "$3" ]; then if [ -n "$3" ]; then
INI="$3" INI="$3"
else else
INI="rusefi_${SHORT_BOARDNAME}.ini" INI="fome_${SHORT_BOARDNAME}.ini"
fi fi
echo "BOARD_DIR=${BOARD_DIR} SHORT_BOARDNAME=${SHORT_BOARDNAME}" echo "BOARD_DIR=${BOARD_DIR} SHORT_BOARDNAME=${SHORT_BOARDNAME}"
@ -40,7 +40,7 @@ echo "BOARD_SPECIFIC_URL=[$BOARD_SPECIFIC_URL]"
source gen_config_common.sh source gen_config_common.sh
echo "Using COMMON_GEN_CONFIG [$COMMON_GEN_CONFIG]" echo "Using COMMON_GEN_CONFIG [$COMMON_GEN_CONFIG]"
# work in progress: migrating to rusefi_${BUNDLE_NAME}.txt # work in progress: migrating to fome_${BUNDLE_NAME}.txt
# in rare cases order of arguments is important - '-tool' should be specified before '-definition' # in rare cases order of arguments is important - '-tool' should be specified before '-definition'
java \ java \
$COMMON_GEN_CONFIG_PREFIX \ $COMMON_GEN_CONFIG_PREFIX \

View File

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
# file gen_config_default.sh # file gen_config_default.sh
bash gen_config_board.sh config/boards/f407-discovery f407-discovery rusefi.ini bash gen_config_board.sh config/boards/f407-discovery f407-discovery fome.ini
exit $? exit $?

View File

@ -8,7 +8,7 @@ cd STM32_Programmer_CLI
cd bin cd bin
call stm32-full-erase.bat call stm32-full-erase.bat
STM32_Programmer_CLI.exe -c port=usb1 -w ../../../rusefi.hex -v -s STM32_Programmer_CLI.exe -c port=usb1 -w ../../../fome.hex -v -s
cd ../.. cd ../..
sleep 2 sleep 2

View File

@ -1 +1 @@
STM32_Programmer_CLI.exe -c port=usb1 -w ../../../rusefi.bin 0x08000000 --verify --start 0x08000000 STM32_Programmer_CLI.exe -c port=usb1 -w ../../../fome.bin 0x08000000 --verify --start 0x08000000

View File

@ -73,11 +73,11 @@ cp -r misc/install/STM32_Programmer_CLI $CONSOLE_FOLDER
# just for now - DFU work in progress # just for now - DFU work in progress
#cp firmware/deliver/rusefi_no_asserts.hex $FOLDER #cp firmware/deliver/rusefi_no_asserts.hex $FOLDER
cp firmware/deliver/rusefi.bin $FOLDER cp firmware/deliver/fome.bin $FOLDER
# probably not needed cp firmware/build/rusefi.elf $FOLDER # probably not needed cp firmware/build/rusefi.elf $FOLDER
cp firmware/deliver/rusefi.dfu $FOLDER cp firmware/deliver/fome.dfu $FOLDER
# just for now - DFU work in progress # just for now - DFU work in progress
cp firmware/deliver/rusefi.hex $FOLDER cp firmware/deliver/fome.hex $FOLDER
# bootloader # bootloader
[ -e firmware/deliver/openblt.bin ] && { cp firmware/deliver/openblt.bin $FOLDER ; } [ -e firmware/deliver/openblt.bin ] && { cp firmware/deliver/openblt.bin $FOLDER ; }
@ -86,11 +86,11 @@ cp firmware/deliver/rusefi.hex $FOLDER
[ -e firmware/deliver/rusefi_update.srec ] && { cp firmware/deliver/rusefi_update.srec $FOLDER ; } [ -e firmware/deliver/rusefi_update.srec ] && { cp firmware/deliver/rusefi_update.srec $FOLDER ; }
if [ -n "$BUNDLE_NAME" ]; then if [ -n "$BUNDLE_NAME" ]; then
mv $FOLDER/rusefi.dfu $FOLDER/rusefi_$BUNDLE_NAME.dfu mv $FOLDER/rusefi.dfu $FOLDER/fome_$BUNDLE_NAME.dfu
fi fi
[ -e firmware/deliver/rusefi.bin ] || { echo "$SCRIPT_NAME: rusefi.bin not found"; exit 1; } [ -e firmware/deliver/fome.bin ] || { echo "$SCRIPT_NAME: fome.bin not found"; exit 1; }
cd temp cd temp

View File

@ -9,12 +9,12 @@ echo "RUSEFI_BUILD_FTP_USER=$RUSEFI_BUILD_FTP_USER"
TIMESTAMP=$(date "+%Y%m%d_%H%M%S") TIMESTAMP=$(date "+%Y%m%d_%H%M%S")
if [ "$4" = "true" ]; then if [ "$4" = "true" ]; then
export FOLDER="temp/rusefi.${3}.${BUNDLE_NAME}" export FOLDER="temp/fome.${3}.${BUNDLE_NAME}"
else else
export FOLDER="temp/rusefi.snapshot.${BUNDLE_NAME}" export FOLDER="temp/fome.snapshot.${BUNDLE_NAME}"
fi fi
export BUNDLE_FULL_NAME="rusefi_bundle_${BUNDLE_NAME}" export BUNDLE_FULL_NAME="fome_bundle_${BUNDLE_NAME}"
bash misc/jenkins/build_working_folder.sh "$3" "$4" bash misc/jenkins/build_working_folder.sh "$3" "$4"

View File

@ -10,7 +10,7 @@
rm -fR build rm -fR build
make make
if [ ! -f build/rusefi.hex ]; then if [ ! -f build/fome.hex ]; then
echo "Firmware compilation failed" echo "Firmware compilation failed"
exit -1 exit -1
fi fi