Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
48 commits
Select commit Hold shift + click to select a range
b0b6a37
Fix max permissible CMS rows and up/down page arrows (#12277) (#12284)
SteveCEvans Feb 2, 2023
ec20d39
Fix missing CUSTOM_DEFAULTS for H730/H750 targets. (#12281)
hydra Feb 2, 2023
5213bb5
Fix unified targets that use OctoSPI. (BF4.4.x) (#12307)
hydra Feb 7, 2023
ba71dfe
BF 4.4.1 rollup 1 (#12306)
hydra Feb 7, 2023
e75d4d9
Fix SDFT batchSize rounding (#12332)
KarateBrot Feb 8, 2023
cf475e6
Revert "Fix missing CUSTOM_DEFAULTS for H730/H750 targets. (#12281)" …
hydra Feb 8, 2023
1fcb206
initial commit
Tdogb Feb 10, 2023
74bd426
4.4.1: Patch for config.h files (#12380)
blckmn Feb 17, 2023
1e7b786
4.4.1: Adding support for building by config (#12376)
blckmn Feb 18, 2023
10cae48
4.4.1: Patch from master for undefined USE_ACC and USE_GYRO (#12385)
blckmn Feb 18, 2023
53cd688
Fix: Renamed USE_LEDSTRIP_64 to USE_LED_STRIP_64 (#12408)
Feb 24, 2023
8703139
4.4.1: Latest changes from unified targets, and sdcard build fix. (#1…
blckmn Feb 27, 2023
9eba513
[4.4-maintenance] increase FF smoothing max to suit elrs 1000hz link …
Feb 28, 2023
a6ca76d
4.4-maintenance H7 Fix frozen ADC values (#12443)
klutvott123 Mar 3, 2023
ebc3479
[4.4-maintenance] Fix ICM426XX AA filter (#12444) (#12465)
sugaarK Mar 6, 2023
fc39593
Merge branch 'sl-4.4-v2' into sl-4.4.0
Tdogb Mar 6, 2023
e156d08
[4.4.1] FIX CONFIG: Adding USE_ACC, USE_GYRO and USE_BARO where appro…
blckmn Mar 8, 2023
dd48053
Improve GPS Rescue Pitch smoothing and disarming (#12413)
nerdCopter Mar 8, 2023
cbf1030
[4.4.1] FIX CONFIG: Adding USE_FLASH to enable where hardware support…
blckmn Mar 10, 2023
a88e6fc
FIX: Missing USE_BLACKBOX
blckmn Mar 11, 2023
6f070bb
make it easier to switch between locked and unlocked
skyfpv Mar 14, 2023
904532d
[4.4.1] FIX: Blackbox (as applied to 4.5.0) (#12520)
blckmn Mar 15, 2023
9763300
DShot zero between beacon commands for 4.4, from 12544 (#12555)
ctzsnooze Mar 21, 2023
2c9b707
Restore DShot Beacon control for 4.4 (#12560)
ctzsnooze Mar 22, 2023
2c72265
4.4.1 Include smartport telemetry for Fport (#12314) (#12572)
klutvott123 Mar 26, 2023
64f4861
Exclude MSP_OSD_CONFIG if USE_OSD not defined (#12513) (#12590)
klutvott123 Apr 2, 2023
e43d591
Add separate AAF values for ICM-42605 (#12616)
sugaarK Apr 3, 2023
e8d4605
add id
Tdogb Apr 4, 2023
983c04d
Update version.h
blckmn Apr 6, 2023
aa228ea
Fix SDC (#12671)
haslinghuis Apr 13, 2023
93f0a23
DSHOT timing improvements (#12709)
SteveCEvans Apr 21, 2023
5fdcfb5
Fix handling of attribute type (#12707)
haslinghuis Apr 22, 2023
c27d7eb
Update config.h
blckmn Apr 26, 2023
31cc3c4
afterburner progress
skyfpv May 1, 2023
5b42e11
Merge remote-tracking branch 'origin/4.4-maintenance' into sl-4.4.0
skyfpv May 1, 2023
1ed1db4
4.4 work and minor bug fixes for afterburner
skyfpv May 29, 2023
c55af22
Merge branch 'sl-4.4.0' of https://github.com/StreetLeagueSpec/betafl…
skyfpv May 29, 2023
6318cde
attempting to fix possible osd buffer overflow
skyfpv May 31, 2023
900d3f8
finished updating to 4.4. Finished Boost V1
skyfpv Jun 7, 2023
ebf871a
cleanup
skyfpv Jun 7, 2023
0de3c38
updating to latest
skyfpv Nov 27, 2023
6a18355
latest working stuff 4/21/2024
skyfpv Apr 22, 2024
fe9561e
unlocked firmware, added boost mode to modes
skyfpv Apr 23, 2024
19e8bc4
added proper boost mode
skyfpv Apr 24, 2024
e831bfe
added adjustable k-factor
skyfpv Jul 24, 2024
c693929
Merge pull request #2 from StreetLeagueSpec/sl-4.4.0
skyfpv Jul 27, 2024
429010c
created locked version of udl igniter spec
skyfpv Nov 16, 2024
bd79f34
9kee first commit to remove some restriction from UDL-1.0.0
Apr 28, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
131 changes: 88 additions & 43 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,9 @@
#

# The target to build, see VALID_TARGETS below
TARGET ?= STM32F405
BOARD ?=
DEFAULT_TARGET ?= STM32F405
TARGET ?=
CONFIG ?=

# Compile-time options
OPTIONS ?=
Expand Down Expand Up @@ -80,8 +81,9 @@ include $(ROOT)/make/system-id.mk
include $(ROOT)/make/checks.mk

# configure some directories that are relative to wherever ROOT_DIR is located
TOOLS_DIR ?= $(ROOT)/tools
DL_DIR := $(ROOT)/downloads
TOOLS_DIR ?= $(ROOT)/tools
DL_DIR := $(ROOT)/downloads
CONFIG_DIR ?= $(ROOT)/src/config

export RM := rm

Expand All @@ -97,13 +99,35 @@ HSE_VALUE ?= 8000000
# used for turning on features like VCP and SDCARD
FEATURES =

ifneq ($(BOARD),)
# silently ignore if the file is not present. Allows for target defaults.
-include $(ROOT)/src/main/board/$(BOARD)/board.mk
ifneq ($(CONFIG),)

ifneq ($(TARGET),)
$(error TARGET or CONFIG should be specified. Not both.)
endif

INCLUDE_DIRS += $(CONFIG_DIR)/$(CONFIG)
CONFIG_FILE := $(CONFIG_DIR)/$(CONFIG)/config.h

ifeq ($(wildcard $(CONFIG_FILE)),)
$(error Config file not found: $(CONFIG_FILE))
endif

TARGET := $(shell grep " FC_TARGET_MCU" $(CONFIG_FILE) | awk '{print $$3}' )

ifeq ($(TARGET),)
$(error No TARGET identified. Is the config.h valid for $(CONFIG)?)
endif

else
ifeq ($(TARGET),)
TARGET := $(DEFAULT_TARGET)
endif
endif #CONFIG

include $(ROOT)/make/targets.mk

BASE_CONFIGS = $(sort $(notdir $(patsubst %/,%,$(dir $(wildcard $(ROOT)/src/config/*/config.h)))))

REVISION := norevision
ifeq ($(shell git diff --shortstat),)
REVISION := $(shell git log -1 --format="%h")
Expand Down Expand Up @@ -151,6 +175,10 @@ VPATH := $(VPATH):$(ROOT)/make
# start specific includes
include $(ROOT)/make/mcu/$(TARGET_MCU).mk

ifneq ($(CONFIG),)
TARGET_FLAGS += -DUSE_CONFIG
endif

# openocd specific includes
include $(ROOT)/make/openocd.mk

Expand Down Expand Up @@ -283,28 +311,38 @@ CPPCHECK = cppcheck $(CSOURCES) --enable=all --platform=unix64 \
$(addprefix -I,$(INCLUDE_DIRS)) \
-I/usr/include -I/usr/include/linux

TARGET_BASENAME = $(BIN_DIR)/$(FORKNAME)_$(FC_VER)_$(TARGET)
TARGET_NAME := $(TARGET)

ifneq ($(CONFIG),)
TARGET_NAME := $(TARGET_NAME)_$(CONFIG)
endif

ifeq ($(REV),yes)
TARGET_NAME := $(TARGET_NAME)_$(REVISION)
endif

TARGET_FULLNAME = $(FORKNAME)_$(FC_VER)_$(TARGET_NAME)

#
# Things we will build
#
TARGET_BIN = $(TARGET_BASENAME).bin
TARGET_HEX = $(TARGET_BASENAME).hex
TARGET_HEX_REV = $(TARGET_BASENAME)_$(REVISION).hex
TARGET_DFU = $(TARGET_BASENAME).dfu
TARGET_ZIP = $(TARGET_BASENAME).zip
TARGET_ELF = $(OBJECT_DIR)/$(FORKNAME)_$(TARGET).elf
TARGET_EXST_ELF = $(OBJECT_DIR)/$(FORKNAME)_$(TARGET)_EXST.elf
TARGET_UNPATCHED_BIN = $(OBJECT_DIR)/$(FORKNAME)_$(TARGET)_UNPATCHED.bin
TARGET_LST = $(OBJECT_DIR)/$(FORKNAME)_$(TARGET).lst
TARGET_OBJS = $(addsuffix .o,$(addprefix $(OBJECT_DIR)/$(TARGET)/,$(basename $(SRC))))
TARGET_DEPS = $(addsuffix .d,$(addprefix $(OBJECT_DIR)/$(TARGET)/,$(basename $(SRC))))
TARGET_MAP = $(OBJECT_DIR)/$(FORKNAME)_$(TARGET).map

TARGET_EXST_HASH_SECTION_FILE = $(OBJECT_DIR)/$(TARGET)/exst_hash_section.bin
TARGET_BIN = $(BIN_DIR)/$(TARGET_FULLNAME).bin
TARGET_HEX = $(BIN_DIR)/$(TARGET_FULLNAME).hex
TARGET_DFU = $(BIN_DIR)/$(TARGET_FULLNAME).dfu
TARGET_ZIP = $(BIN_DIR)/$(TARGET_FULLNAME).zip
TARGET_OBJ_DIR = $(OBJECT_DIR)/$(TARGET_NAME)
TARGET_ELF = $(OBJECT_DIR)/$(FORKNAME)_$(TARGET_NAME).elf
TARGET_EXST_ELF = $(OBJECT_DIR)/$(FORKNAME)_$(TARGET_NAME)_EXST.elf
TARGET_UNPATCHED_BIN = $(OBJECT_DIR)/$(FORKNAME)_$(TARGET_NAME)_UNPATCHED.bin
TARGET_LST = $(OBJECT_DIR)/$(FORKNAME)_$(TARGET_NAME).lst
TARGET_OBJS = $(addsuffix .o,$(addprefix $(TARGET_OBJ_DIR)/,$(basename $(SRC))))
TARGET_DEPS = $(addsuffix .d,$(addprefix $(TARGET_OBJ_DIR)/,$(basename $(SRC))))
TARGET_MAP = $(OBJECT_DIR)/$(FORKNAME)_$(TARGET_NAME).map

TARGET_EXST_HASH_SECTION_FILE = $(TARGET_OBJ_DIR)/exst_hash_section.bin

TARGET_EF_HASH := $(shell echo -n "$(EXTRA_FLAGS)" | openssl dgst -md5 | awk '{print $$2;}')
TARGET_EF_HASH_FILE := $(OBJECT_DIR)/$(TARGET)/.efhash_$(TARGET_EF_HASH)
TARGET_EF_HASH_FILE := $(TARGET_OBJ_DIR)/.efhash_$(TARGET_EF_HASH)

CLEAN_ARTIFACTS := $(TARGET_BIN)
CLEAN_ARTIFACTS += $(TARGET_HEX_REV) $(TARGET_HEX)
Expand All @@ -313,7 +351,7 @@ CLEAN_ARTIFACTS += $(TARGET_LST)
CLEAN_ARTIFACTS += $(TARGET_DFU)

# Make sure build date and revision is updated on every incremental build
$(OBJECT_DIR)/$(TARGET)/build/version.o : $(SRC)
$(TARGET_OBJ_DIR)/build/version.o : $(SRC)

# List of buildable ELF files and their object dependencies.
# It would be nice to compute these lists, but that seems to be just beyond make.
Expand Down Expand Up @@ -367,11 +405,8 @@ $(TARGET_BIN): $(TARGET_UNPATCHED_BIN)
@echo "Patching MD5 hash into HASH section" "$(STDOUT)"
$(V1) cat $(TARGET_UNPATCHED_BIN).md5 | awk '{printf("%08x: %s",64-16,$$2);}' | xxd -r - $(TARGET_EXST_HASH_SECTION_FILE)

# For some currently unknown reason, OBJCOPY, with only input/output files, will generate a file around 2GB for the H730 unless we remove an unused-section
# As a workaround drop the ._user_heap_stack section, which is only used during build to show errors if there's not enough space for the heap/stack.
# The issue can be seen with `readelf -S $(TARGET_EXST_ELF)' vs `readelf -S $(TARGET_ELF)`
$(V1) @echo "Patching updated HASH section into $(TARGET_EXST_ELF)" "$(STDOUT)"
$(OBJCOPY) $(TARGET_ELF) $(TARGET_EXST_ELF) --remove-section ._user_heap_stack --update-section .exst_hash=$(TARGET_EXST_HASH_SECTION_FILE)
$(OBJCOPY) $(TARGET_ELF) $(TARGET_EXST_ELF) --update-section .exst_hash=$(TARGET_EXST_HASH_SECTION_FILE)

$(V1) $(READELF) -S $(TARGET_EXST_ELF)
$(V1) $(READELF) -l $(TARGET_EXST_ELF)
Expand All @@ -385,7 +420,7 @@ $(TARGET_HEX): $(TARGET_BIN)
endif

$(TARGET_ELF): $(TARGET_OBJS) $(LD_SCRIPT) $(LD_SCRIPTS)
@echo "Linking $(TARGET)" "$(STDOUT)"
@echo "Linking $(TARGET_NAME)" "$(STDOUT)"
$(V1) $(CROSS_CC) -o $@ $(filter-out %.ld,$^) $(LD_FLAGS)
$(V1) $(SIZE) $(TARGET_ELF)

Expand All @@ -398,15 +433,15 @@ define compile_file
endef

ifeq ($(DEBUG),GDB)
$(OBJECT_DIR)/$(TARGET)/%.o: %.c
$(TARGET_OBJ_DIR)/%.o: %.c
$(V1) mkdir -p $(dir $@)
$(V1) $(if $(findstring $<,$(NOT_OPTIMISED_SRC)), \
$(call compile_file,not optimised, $(CC_NO_OPTIMISATION)) \
, \
$(call compile_file,debug,$(CC_DEBUG_OPTIMISATION)) \
)
else
$(OBJECT_DIR)/$(TARGET)/%.o: %.c
$(TARGET_OBJ_DIR)/%.o: %.c
$(V1) mkdir -p $(dir $@)
$(V1) $(if $(findstring $<,$(NOT_OPTIMISED_SRC)), \
$(call compile_file,not optimised,$(CC_NO_OPTIMISATION)) \
Expand All @@ -424,12 +459,12 @@ $(OBJECT_DIR)/$(TARGET)/%.o: %.c
endif

# Assemble
$(OBJECT_DIR)/$(TARGET)/%.o: %.s
$(TARGET_OBJ_DIR)/%.o: %.s
$(V1) mkdir -p $(dir $@)
@echo "%% $(notdir $<)" "$(STDOUT)"
$(V1) $(CROSS_CC) -c -o $@ $(ASFLAGS) $<

$(OBJECT_DIR)/$(TARGET)/%.o: %.S
$(TARGET_OBJ_DIR)/%.o: %.S
$(V1) mkdir -p $(dir $@)
@echo "%% $(notdir $<)" "$(STDOUT)"
$(V1) $(CROSS_CC) -c -o $@ $(ASFLAGS) $<
Expand All @@ -441,22 +476,28 @@ all: $(CI_TARGETS)
## all_all : Build all targets (including legacy / unsupported)
all_all: $(VALID_TARGETS)

$(VALID_TARGETS):
$(BASE_TARGETS):
$(V0) @echo "Building $@" && \
$(MAKE) hex TARGET=$@ && \
echo "Building $@ succeeded."

$(BASE_CONFIGS):
$(V0) @echo "Building config $@" && \
$(MAKE) hex CONFIG=$@ && \
echo "Building config $@ succeeded."

$(NOBUILD_TARGETS):
$(MAKE) TARGET=$@

TARGETS_CLEAN = $(addsuffix _clean,$(VALID_TARGETS))
CONFIGS_CLEAN = $(addsuffix _clean,$(BASE_CONFIGS))

## clean : clean up temporary / machine-generated files
clean:
@echo "Cleaning $(TARGET)"
@echo "Cleaning $(TARGET_NAME)"
$(V0) rm -f $(CLEAN_ARTIFACTS)
$(V0) rm -rf $(OBJECT_DIR)/$(TARGET)
@echo "Cleaning $(TARGET) succeeded."
$(V0) rm -rf $(TARGET_OBJ_DIR)
@echo "Cleaning $(TARGET_NAME) succeeded."

## test_clean : clean up temporary / machine-generated files (tests)
test-%_clean:
Expand All @@ -469,6 +510,10 @@ test_clean:
$(TARGETS_CLEAN):
$(V0) $(MAKE) -j TARGET=$(subst _clean,,$@) clean

## <CONFIG>_clean : clean up one specific config (alias for above)
$(CONFIGS_CLEAN):
$(V0) $(MAKE) -j CONFIG=$(subst _clean,,$@) clean

## clean_all : clean all valid targets
clean_all: $(TARGETS_CLEAN) test_clean

Expand Down Expand Up @@ -529,10 +574,7 @@ hex:
TARGETS_REVISION = $(addsuffix _rev,$(VALID_TARGETS))
## <TARGET>_rev : build target and add revision to filename
$(TARGETS_REVISION):
$(V0) $(MAKE) hex_rev TARGET=$(subst _rev,,$@)

hex_rev: hex
$(V0) mv -f $(TARGET_HEX) $(TARGET_HEX_REV)
$(V0) $(MAKE) hex REV=yes TARGET=$(subst _rev,,$@)

all_rev: $(addsuffix _rev,$(CI_TARGETS))

Expand Down Expand Up @@ -581,6 +623,9 @@ targets:
@echo "Built targets: $(CI_TARGETS)"
@echo "Default target: $(TARGET)"

configs:
@echo "Valid configs: $(BASE_CONFIGS)"

targets-ci-print:
@echo $(CI_TARGETS)

Expand Down Expand Up @@ -648,12 +693,12 @@ test_%:

$(TARGET_EF_HASH_FILE):
$(V1) mkdir -p $(dir $@)
$(V0) rm -f $(OBJECT_DIR)/$(TARGET)/.efhash_*
$(V0) rm -f $(TARGET_OBJ_DIR)/.efhash_*
@echo "EF HASH -> $(TARGET_EF_HASH_FILE)"
$(V1) touch $(TARGET_EF_HASH_FILE)

# rebuild everything when makefile changes or the extra flags have changed
$(TARGET_OBJS): $(TARGET_EF_HASH_FILE) Makefile $(TARGET_DIR)/target.mk $(wildcard make/*)
$(TARGET_OBJS): $(TARGET_EF_HASH_FILE) Makefile $(TARGET_DIR)/target.mk $(wildcard make/*) $(CONFIG_FILE)

# include auto-generated dependencies
-include $(TARGET_DEPS)
44 changes: 44 additions & 0 deletions SPEC README.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
Disclaimer:
Street League Spec, its partners, and the authors of this software are not responsible for injury or damage to property resulting from the use of this software. Use at your own risk

What is the RPM limiter?
The RPM limiter seeks to better equalize the performance of drone motors for spec racing purposes. A PID loop is used to limit the drone's maximum rpm to 13k rpm at 100% throttle. The limiter also linearizes the rpm of the motors such that, for example, 50% throttle will result in 50% of 13k rpm, 25% will result in 25% of the max throttle, etc. This means that battery sag will have very little effect on the rpm of the motors throughout the flight, and you will not feel it the same way you typically do. Please ensure voltage alarms configured on your drone.

IMPORTANT - Before/after flashing:
Before flashing, click auto-detect in the firmware tab in betaflight or select your FC from the dropdown
- This tells Betaflight which custom defaults it should apply to your quad after flashing.
When you connect for the first time, you should be prompted to apply custom defaults. You MUST do this or your FC may not work properly.
If you are not prompted to apply custom defaults, use the custom defaults found on the Betaflight's github
- https://github.com/betaflight/unified-targets/tree/master/configs/default

Which HEX do I use?
- connect your fc to betaflight
- open the cli tab and type "version"
- look for board_name: (YOUR BOARD NAME HERE)
- this will show you which board you should flash
- if in doubt, check what target your FC's manufacterur recommends in their user manual
- If you have any questions, please reach out on our discord: https://discord.gg/C4HHYccaqk

How do I activate the boost?
- We've hijacked the beeper mode in betaflight in order to enable boost without any complicated cli commands
- Simply open the modes tab and apply an aux channel and range to the beeper mode
- We also recommend enabling the boost bar in your OSD so you can keep track of your boost usage
- Open the OSD tab and enable "Battery usage" and leave the drop down on "Graphical remaining"

Optional CLI Commands:
- if you are having issues launching your drone (E.G. low power when you try to take off), consider lowering your moter idle speed.
- You can also try the cli command "set rpm_limiter_idle_rpm = 14"
- This sets the expected idle rpm / 100. For street league a good starting place is 1400 RPM, which is `set rpm_limiter_idle_rpm = 14`.
THE QUAD WILL SPIN UP TO THIS RPM WHEN ARMED, SO DO NOT SET TO ANY VALUE ABOVE 50!


Blackbox setup:
You can view the rpm averaged accross the 4 motors as well as the P term, I term and D term in the blackbox. Simply `set debug_mode = RPM_LIMITER` in the cli. The values logged as a result are as follows in this order
Debug 0. Average RPM
Debug 1. RPM error: Difference between desired RPM limit and smoothed average rpm. RPM limit is rpm_limiter_rpm_limit for linearization off and rpm_limiter_rpm_limit*throttle for linearization on. Positive means overspeed, negative means underspeed
Debug 2. I term (positive means term is pulling the throttle down)
Debug 3. D term (positive means term is pulling the throttle down)

Am I spec yet?
Once you have flashed the HEX, your FC is spec! If you have any issues, please verify they don't also exist on stock betaflight. Then report them here.
- https://github.com/StreetLeagueSpec/betaflight
26 changes: 26 additions & 0 deletions build.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
#!/bin/bash

# Check if the input file was provided
if [ -z dos2unix "$1" ]; then
echo "Usage: $0 <input-file>"
exit 1
fi

# Convert line endings of the script file to LF
dos2unix "$0" >/dev/null 2>&1

# Loop through each line in the input file
while read -r line; do
# Extract the device name from the current line
device=$(echo "$line" | cut -d',' -f1)

# Skip the header row
if [ "$device" == "DEVICE_NAME" ]; then
continue
fi

# Run the make command for the current device
echo "Building firmware for $device"
make "$device" EXTRA_FLAGS="-D'RELEASE_NAME=4.4.1' -DCLOUD_BUILD -DUSE_DSHOT -DUSE_GPS -DUSE_GPS_PLUS_CODES -DUSE_LED_STRIP -DUSE_OSD -DUSE_OSD_HD -DUSE_OSD_SD -DUSE_PINIO -DUSE_SERIALRX -DUSE_SERIALRX_CRSF -DUSE_SERIALRX_DEFAULT -DUSE_SERIALRX_GHST -DUSE_SERIALRX_SBUS -DUSE_SERIALRX_SRXL2 -DUSE_SERIALRX_SPEKTRUM -DUSE_TELEMETRY -DUSE_TELEMETRY_CRSF -DUSE_TELEMETRY_GHST -DUSE_VTX"
#make JHEF411 EXTRA_FLAGS="-D'RELEASE_NAME=4.4.1' -DCLOUD_BUILD -DUSE_DSHOT -DUSE_GPS -DUSE_GPS_PLUS_CODES -DUSE_LED_STRIP -DUSE_OSD -DUSE_OSD_HD -DUSE_OSD_SD -DUSE_PINIO -DUSE_SERIALRX -DUSE_SERIALRX_CRSF -DUSE_SERIALRX_DEFAULT -DUSE_SERIALRX_GHST -DUSE_SERIALRX_SBUS -DUSE_SERIALRX_SRXL2 -DUSE_SERIALRX_SPEKTRUM -DUSE_TELEMETRY -DUSE_TELEMETRY_CRSF -DUSE_TELEMETRY_GHST -DUSE_VTX
done < "$1"
7 changes: 7 additions & 0 deletions common-devices.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
OMNIBUSF4SD
AIKONF4
AIKONF7
HOBBYWING_XROTORF4G3
HOBBYWING_XROTORF7CONV
BETAFPVF411
JHEF411
1 change: 1 addition & 0 deletions device.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
BetafpvF411RX
Loading