Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/master' into openblt-can
Browse files Browse the repository at this point in the history
  • Loading branch information
mck1117 committed Nov 7, 2023
2 parents 2e114d1 + 3402870 commit 6b97de0
Show file tree
Hide file tree
Showing 566 changed files with 61,220 additions and 44,551 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/build-FOME-console.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
submodules: true

Expand Down
129 changes: 110 additions & 19 deletions .github/workflows/build-firmware.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,82 @@ on:
type: string

jobs:
build-libopenblt-linux:
runs-on: ubuntu-latest-selfhost

steps:
- uses: actions/checkout@v4
with:
submodules: true

- name: cmake configure libopenblt
working-directory: ./firmware/ext/openblt/Host/Source/LibOpenBLT/build
run: cmake -DCMAKE_BUILD_TYPE=Release ..

- name: make libopenblt
working-directory: ./firmware/ext/openblt/Host/Source/LibOpenBLT/build
run: make -j8

- name: cmake configure libopenblt_jni
working-directory: ./misc/libopenblt_jni/build
run: cmake -DCMAKE_BUILD_TYPE=Release ..

- name: make libopenblt_jni
working-directory: ./misc/libopenblt_jni/build
run: make -j8

- name: coalesce
run: |
mkdir deliver
cp ./firmware/ext/openblt/Host/libopenblt.so deliver/
cp ./misc/libopenblt_jni/build/libopenblt_jni.so deliver/
- uses: actions/upload-artifact@v3
with:
name: libopenblt-linux
path: |
./deliver/libopenblt.so
./deliver/libopenblt_jni.so
build-libopenblt-macos:
runs-on: macos-13

steps:
- uses: actions/checkout@v4
with:
submodules: true

- name: cmake configure libopenblt
working-directory: ./firmware/ext/openblt/Host/Source/LibOpenBLT/build
run: cmake -DCMAKE_BUILD_TYPE=Release ..

- name: make libopenblt
working-directory: ./firmware/ext/openblt/Host/Source/LibOpenBLT/build
run: make -j8

- name: cmake configure libopenblt_jni
working-directory: ./misc/libopenblt_jni/build
run: cmake -DCMAKE_BUILD_TYPE=Release ..

- name: make libopenblt_jni
working-directory: ./misc/libopenblt_jni/build
run: make -j8

- name: coalesce
run: |
mkdir deliver
cp ./firmware/ext/openblt/Host/libopenblt.dylib deliver/
cp ./misc/libopenblt_jni/build/libopenblt_jni.dylib deliver/
- uses: actions/upload-artifact@v3
with:
name: libopenblt-macos
path: |
./deliver/libopenblt.dylib
./deliver/libopenblt_jni.dylib
build-firmware:
needs: [build-libopenblt-linux, build-libopenblt-macos]
runs-on: ubuntu-latest-selfhost

strategy:
Expand All @@ -32,22 +107,26 @@ jobs:
# folder: config/boards/hellen/hellen81
# ini-file: fome_hellen81.ini

- build-target: alphax-2chan
folder: config/boards/hellen/alphax-2chan
ini-file: fome_alphax-2chan.ini
# - build-target: alphax-2chan
# folder: config/boards/hellen/alphax-2chan
# ini-file: fome_alphax-2chan.ini

- build-target: alphax-4chan
folder: config/boards/hellen/alphax-4chan
ini-file: fome_alphax-4chan.ini
# - build-target: alphax-4chan
# folder: config/boards/hellen/alphax-4chan
# ini-file: fome_alphax-4chan.ini

- build-target: alphax-8chan
folder: config/boards/hellen/alphax-8chan
ini-file: fome_alphax-8chan.ini
# - build-target: alphax-8chan
# folder: config/boards/hellen/alphax-8chan
# ini-file: fome_alphax-8chan.ini

# - build-target: harley81
# folder: config/boards/hellen/harley81
# ini-file: fome_harley81.ini

- build-target: small-can-board
folder: config/boards/hellen/small-can-board
ini-file: rusefi_small-can-board.ini

# - build-target: hellen88bmw
# folder: config/boards/hellen/hellen88bmw
# ini-file: fome_hellen88bmw.ini
Expand Down Expand Up @@ -84,9 +163,9 @@ jobs:
# folder: config/boards/hellen/hellen-honda-k
# ini-file: fome_hellen-honda-k.ini

- build-target: hellen154hyundai
folder: config/boards/hellen/hellen154hyundai
ini-file: fome_hellen154hyundai.ini
# - build-target: hellen154hyundai
# folder: config/boards/hellen/hellen154hyundai
# ini-file: fome_hellen154hyundai.ini

# - build-target: frankenso_na6
# folder: config/boards/frankenso
Expand Down Expand Up @@ -156,13 +235,13 @@ jobs:
# folder: config/boards/f429-discovery
# ini-file: fome_f429-discovery.ini

# - build-target: core8
# folder: config/boards/core8
# ini-file: fome_core8.ini
- build-target: core8
folder: config/boards/core8
ini-file: fome_core8.ini

# - build-target: 48way
# folder: config/boards/48way
# ini-file: fome_48way.ini
- build-target: core48
folder: config/boards/core48
ini-file: fome_core48.ini

# - build-target: atlas
# folder: config/boards/atlas
Expand Down Expand Up @@ -190,7 +269,7 @@ jobs:
echo "full=true" >> $GITHUB_ENV
fi
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
submodules: true

Expand Down Expand Up @@ -261,6 +340,18 @@ jobs:
# 'OS="Windows_NT"' allows us to build Windows executable on unix
run: OS="Windows_NT" bash misc/jenkins/build_simulator.sh

- name: Download LibOpenBLT Tool (Linux)
uses: actions/download-artifact@v3
with:
name: libopenblt-linux
path: ./firmware/ext/openblt/Host/

- name: Download LibOpenBLT Tool (MacOS)
uses: actions/download-artifact@v3
with:
name: libopenblt-macos
path: ./firmware/ext/openblt/Host/

- name: Package Bundle
if: ${{ env.full == 'true' }}
run: bash misc/jenkins/compile_other_versions/prepare_bundle.sh ${{matrix.build-target}} "${{matrix.ini-file}}" ${{ toJSON(inputs.build_name) }}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/build-simulator.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- name: Checkout Submodules
run: |
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/build-unit-tests.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ jobs:
os: [ubuntu-latest, macos-latest]

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
submodules: true

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/gen-configs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- name: Checkout Submodules
run: |
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/hardware-ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ jobs:
runs-on: ${{matrix.runs-on}}

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
submodules: true

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/set-date.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ jobs:
if: ${{ github.repository == 'FOME-Tech/fome-fw' }}

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- name: Check last date
run: if [ "$(git log -1 --pretty=%B)" = "Update date" ]; then echo "skip=true" >> $GITHUB_ENV; fi
Expand Down
4 changes: 2 additions & 2 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -26,8 +26,8 @@
branch = rusefi_prod_2021_11_12
[submodule "firmware/ext/openblt"]
path = firmware/ext/openblt
url = https://github.com/rusefi/openblt
branch = rusefi_prod
url = https://github.com/fome-tech/openblt
branch = master
[submodule "misc/hex2dfu"]
path = misc/hex2dfu
url = https://github.com/rusefi/hex2dfu
Expand Down
10 changes: 10 additions & 0 deletions firmware/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,12 +38,22 @@ Release template (copy/paste this for new release):
- Configurable ignition timing limits, adding safety particularly for engines running wasted spark with a large cam #211
- Improved injection, ignition bench test UI and functionality: More gauges, fuel pump on/off buttons for injector testing, and configurable duration/count #219
- Preset for Mazdaspeed Miata (NB) IAT sensor
- Option to compensate Alpha-N fueling with intake air temperature
- Gasoline-scale AFR gauge: instead of showing true AFR, show "gasoline scale" where 14.7 means stoichiometric
- Decode fuel temperature from flex fuel sensors #254
- Allow brief operation over 100% injector duty cycle and add configurable duty cycle limits #215
- Buttons to bump VVT targets for testing/PID tuning
- Improved serial port selection for FOME console and firmware update

### Fixed
- Improved bench test resolution (more usable for testing injectors, dwell, etc)
- Maximum knock retard table displays correct Y axis values in TunerStudio
- Make errors about fuel pressure sensors less aggressive #111 #117
- Always operate in "two wire" mode for batch fuel, fixing batch firing order #23
- Fix "Toyota 3 Tooth Cam" VVT mode (1JZ, 2JZ, 1G, etc) actually works now #237
- Fix autotune while TS project is in AFR mode - corrections now made properly for target AFR table values
- Changing idle stepper settings causes kernel panic #265
- Data log channel "Fuel: Injection timing SOI" indicates correct values

## May 2023 Release

Expand Down
15 changes: 4 additions & 11 deletions firmware/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -43,15 +43,6 @@ ifeq ($(DEBUG_LEVEL_OPT),)
# DEBUG_LEVEL_OPT = -O0 -ggdb -g
endif


ifeq ($(CCACHE_DIR),)
$(info No CCACHE_DIR)
else
$(info CCACHE_DIR is ${CCACHE_DIR})
CCPREFIX=ccache
endif


# Compiler options here.
# yes we have two kinds of EXTRA_*PARAMS so that we can define those in two different places independently
#
Expand Down Expand Up @@ -79,6 +70,8 @@ endif
# Hellen is one of the boards which cares
USE_CPPOPT += -Wno-error=tautological-compare

USE_CPPOPT += $(RUSEFI_CPPOPT)

# Enable this if you want the linker to remove unused code and data
ifeq ($(USE_LINK_GC),)
USE_LINK_GC = yes
Expand Down Expand Up @@ -297,8 +290,8 @@ ifeq ($(CROSS_COMPILE),)
else
TRGT = $(CROSS_COMPILE)
endif
CC = $(CCPREFIX) $(TRGT)gcc
CPPC = $(CCPREFIX) $(TRGT)g++
CC = $(TRGT)gcc
CPPC = $(TRGT)g++
# Enable loading with g++ only if you need C++ runtime support.
# NOTE: You can use C++ even without C++ support if you are careful. C++
# runtime support makes code size explode.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,9 @@ DDEFS += -DEFI_USE_UART_DMA=FALSE

DDEFS += -DEFI_USB_SERIAL=TRUE -DHAL_USE_USB_MSD=FALSE

# Cache is disabled on F7, H7
DDEFS += -DSTM32_SRAM2_NOCACHE=FALSE -DSTM32_NOCACHE_SRAM1_SRAM2=FALSE -DSTM32_NOCACHE_SRAM3=FALSE

DDEFS += -DEFI_UNIT_TEST=0 -DEFI_PROD_CODE=1 -DEFI_SIMULATOR=0

# Compiler options here.
Expand Down Expand Up @@ -190,8 +193,8 @@ CPPSRC = $(ALLCPPSRC) \
$(PROJECT_DIR)/bootloader/openblt_chibios/openblt_chibios.cpp \
$(PROJECT_DIR)/bootloader/openblt_chibios/openblt_flash.cpp \
$(PROJECT_DIR)/bootloader/openblt_chibios/openblt_usb.cpp \
src/rusefi_stubs.cpp \
src/main.cpp
bootloader_stubs.cpp \
bootloader_main.cpp

# C sources to be compiled in ARM mode regardless of the global setting.
# NOTE: Mixing ARM and THUMB mode enables the -mthumb-interwork compiler
Expand Down Expand Up @@ -220,6 +223,7 @@ ASMXSRC = $(STARTUPASM) $(PORTASM) $(OSALASM) $(PROJECT_DIR)/hw_layer/main_hardf
INCDIR = $(ALLINC) \
$(PCH_DIR) \
.. \
$(BOARDINC) \
$(CHIBIOS)/os/various \
$(CHIBIOS)/os/ex/ST \
$(CHIBIOS)/os/hal/lib/peripherals/sensors \
Expand All @@ -235,6 +239,7 @@ INCDIR = $(ALLINC) \
$(PROJECT_DIR)/console/binary_log \
$(PROJECT_DIR)/console/fl_binary \
$(PROJECT_DIR)/hw_layer \
$(PROJECT_DIR)/hw_layer/digital_input \
$(PROJECT_DIR)/hw_layer/adc \
$(PROJECT_DIR)/hw_layer/mass_storage \
$(PROJECT_DIR)/hw_layer/serial_over_usb \
Expand Down Expand Up @@ -279,8 +284,8 @@ ifeq ($(CROSS_COMPILE),)
else
TRGT = $(CROSS_COMPILE)
endif
CC = $(CCPREFIX) $(TRGT)gcc
CPPC = $(CCPREFIX) $(TRGT)g++
CC = $(TRGT)gcc
CPPC = $(TRGT)g++
# Enable loading with g++ only if you need C++ runtime support.
# NOTE: You can use C++ even without C++ support if you are careful. C++
# runtime support makes code size explode.
Expand Down
Loading

0 comments on commit 6b97de0

Please sign in to comment.