@@ -1102,6 +1102,77 @@ RAK.menu.upload_method.dfuMethod.upload.tool=stm32CubeProg
110211023dprinter.menu.upload_method.dfuMethod.upload.options=-g
110311033dprinter.menu.upload_method.dfuMethod.upload.tool=stm32CubeProg
11041104
1105+
1106+ ###############################
1107+ # Genericflight Flight Controllers
1108+
1109+ Genericflight.name=Generic flight controllers
1110+
1111+
1112+ Genericflight.build.vid=0x0483
1113+ Genericflight.build.core=arduino
1114+ Genericflight.build.board=Genericflight
1115+ Genericflight.build.mcu=cortex-m3
1116+ Genericflight.build.series=STM32F1xx
1117+ Genericflight.build.cmsis_lib_gcc=arm_cortexM3l_math
1118+ Genericflight.build.extra_flags=-D{build.product_line} {build.enable_usb} {build.xSerial} {build.bootloader_flags}
1119+
1120+
1121+
1122+ # AfroFlight Rev5
1123+ Genericflight.menu.pnum.AFROFLIGHT_F103CB=Afro Flight Rev5
1124+ Genericflight.menu.pnum.AFROFLIGHT_F103CB.upload.maximum_size=131072
1125+ Genericflight.menu.pnum.AFROFLIGHT_F103CB.upload.maximum_data_size=20480
1126+ Genericflight.menu.pnum.AFROFLIGHT_F103CB.build.board=AFROFLIGHT_F103CB
1127+ Genericflight.menu.pnum.AFROFLIGHT_F103CB.build.series=STM32F1xx
1128+ Genericflight.menu.pnum.AFROFLIGHT_F103CB.build.product_line=STM32F103xB
1129+ Genericflight.menu.pnum.AFROFLIGHT_F103CB.build.variant=AFROFLIGHT_F103CB
1130+
1131+
1132+
1133+ # Upload menu
1134+
1135+ Genericflight.menu.upload_method.swdMethod=STM32CubeProgrammer (SWD)
1136+ Genericflight.menu.upload_method.swdMethod.upload.protocol=0
1137+ Genericflight.menu.upload_method.swdMethod.upload.options=-g
1138+ Genericflight.menu.upload_method.swdMethod.upload.tool=stm32CubeProg
1139+
1140+ Genericflight.menu.upload_method.serialMethod=STM32CubeProgrammer (Serial)
1141+ Genericflight.menu.upload_method.serialMethod.upload.protocol=1
1142+ Genericflight.menu.upload_method.serialMethod.upload.options={serial.port.file} -s
1143+ Genericflight.menu.upload_method.serialMethod.upload.tool=stm32CubeProg
1144+
1145+ Genericflight.menu.upload_method.dfuMethod=STM32CubeProgrammer (DFU)
1146+ Genericflight.menu.upload_method.dfuMethod.upload.protocol=2
1147+ Genericflight.menu.upload_method.dfuMethod.upload.options=-g
1148+ Genericflight.menu.upload_method.dfuMethod.upload.tool=stm32CubeProg
1149+
1150+ Genericflight.menu.upload_method.bmpMethod=BMP (Black Magic Probe)
1151+ Genericflight.menu.upload_method.bmpMethod.upload.protocol=gdb_bmp
1152+ Genericflight.menu.upload_method.bmpMethod.upload.tool=bmp_upload
1153+
1154+ Genericflight.menu.upload_method.hidMethod=HID Bootloader 2.2
1155+ Genericflight.menu.upload_method.hidMethod.upload.protocol=hid22
1156+ Genericflight.menu.upload_method.hidMethod.upload.tool=hid_upload
1157+ Genericflight.menu.upload_method.hidMethod.build.flash_offset=0x800
1158+ Genericflight.menu.upload_method.hidMethod.build.bootloader_flags=-DBL_HID -DVECT_TAB_OFFSET={build.flash_offset}
1159+
1160+ Genericflight.menu.upload_method.dfu2Method=Maple DFU Bootloader 2.0
1161+ Genericflight.menu.upload_method.dfu2Method.upload.protocol=maple
1162+ Genericflight.menu.upload_method.dfu2Method.upload.tool=maple_upload
1163+ Genericflight.menu.upload_method.dfu2Method.upload.usbID=1EAF:0003
1164+ Genericflight.menu.upload_method.dfu2Method.upload.altID=2
1165+ Genericflight.menu.upload_method.dfu2Method.build.flash_offset=0x2000
1166+ Genericflight.menu.upload_method.dfu2Method.build.bootloader_flags=-DBL_LEGACY_LEAF -DVECT_TAB_OFFSET={build.flash_offset}
1167+
1168+ Genericflight.menu.upload_method.dfuoMethod=Maple DFU Bootloader original
1169+ Genericflight.menu.upload_method.dfuoMethod.upload.protocol=maple
1170+ Genericflight.menu.upload_method.dfuoMethod.upload.tool=maple_upload
1171+ Genericflight.menu.upload_method.dfuoMethod.upload.usbID=1EAF:0003
1172+ Genericflight.menu.upload_method.dfuoMethod.upload.altID=1
1173+ Genericflight.menu.upload_method.dfuoMethod.build.flash_offset=0x5000
1174+ Genericflight.menu.upload_method.dfuoMethod.build.bootloader_flags=-DBL_LEGACY_LEAF -DVECT_TAB_OFFSET={build.flash_offset}
1175+
11051176################################################################################
11061177# Serialx activation
11071178Nucleo_144.menu.xserial.generic=Enabled (generic 'Serial')
@@ -1170,6 +1241,12 @@ RAK.menu.xserial.disabled.build.xSerial=
117012413dprinter.menu.xserial.disabled=Disabled (no Serial support)
117112423dprinter.menu.xserial.disabled.build.xSerial=
11721243
1244+ Genericflight.menu.xserial.generic=Enabled (generic 'Serial')
1245+ Genericflight.menu.xserial.none=Enabled (no generic 'Serial')
1246+ Genericflight.menu.xserial.none.build.xSerial=-DHAL_UART_MODULE_ENABLED -DHWSERIAL_NONE
1247+ Genericflight.menu.xserial.disabled=Disabled (no Serial support)
1248+ Genericflight.menu.xserial.disabled.build.xSerial=
1249+
11731250# USB connectivity
11741251Nucleo_144.menu.usb.none=None
11751252Nucleo_144.menu.usb.CDCgen=CDC (generic 'Serial' supersede U(S)ART)
@@ -1284,6 +1361,19 @@ Sparky.menu.xusb.HSFS.build.usb_speed=-DUSE_USB_HS -DUSE_USB_HS_IN_FS
128413613dprinter.menu.xusb.HSFS=High Speed in Full Speed mode
128513623dprinter.menu.xusb.HSFS.build.usb_speed=-DUSE_USB_HS -DUSE_USB_HS_IN_FS
12861363
1364+ Genericflight.menu.usb.none=None
1365+ Genericflight.menu.usb.CDCgen=CDC (generic 'Serial' supersede U(S)ART)
1366+ Genericflight.menu.usb.CDCgen.build.enable_usb={build.usb_flags} -DUSBD_USE_CDC
1367+ Genericflight.menu.usb.CDC=CDC (no generic 'Serial')
1368+ Genericflight.menu.usb.CDC.build.enable_usb={build.usb_flags} -DUSBD_USE_CDC -DDISABLE_GENERIC_SERIALUSB
1369+ Genericflight.menu.usb.HID=HID (keyboard and mouse)
1370+ Genericflight.menu.usb.HID.build.enable_usb={build.usb_flags} -DUSBD_USE_HID_COMPOSITE
1371+ Genericflight.menu.xusb.FS=Low/Full Speed
1372+ Genericflight.menu.xusb.HS=High Speed
1373+ Genericflight.menu.xusb.HS.build.usb_speed=-DUSE_USB_HS
1374+ Genericflight.menu.xusb.HSFS=High Speed in Full Speed mode
1375+ Genericflight.menu.xusb.HSFS.build.usb_speed=-DUSE_USB_HS -DUSE_USB_HS_IN_FS
1376+
12871377# Optimizations
12881378Nucleo_144.menu.opt.osstd=Smallest (-Os default)
12891379Nucleo_144.menu.opt.oslto=Smallest (-Os) with LTO
@@ -1485,6 +1575,24 @@ RAK.menu.opt.ogstd.build.flags.optimize=-g -Og
148515753dprinter.menu.opt.ogstd=Debug (-g)
148615763dprinter.menu.opt.ogstd.build.flags.optimize=-g -Og
14871577
1578+ Genericflight.menu.opt.osstd=Smallest (-Os default)
1579+ Genericflight.menu.opt.oslto=Smallest (-Os) with LTO
1580+ Genericflight.menu.opt.oslto.build.flags.optimize=-Os -flto
1581+ Genericflight.menu.opt.o1std=Fast (-O1)
1582+ Genericflight.menu.opt.o1std.build.flags.optimize=-O1
1583+ Genericflight.menu.opt.o1lto=Fast (-O1) with LTO
1584+ Genericflight.menu.opt.o1lto.build.flags.optimize=-O1 -flto
1585+ Genericflight.menu.opt.o2std=Faster (-O2)
1586+ Genericflight.menu.opt.o2std.build.flags.optimize=-O2
1587+ Genericflight.menu.opt.o2lto=Faster (-O2) with LTO
1588+ Genericflight.menu.opt.o2lto.build.flags.optimize=-O2 -flto
1589+ Genericflight.menu.opt.o3std=Fastest (-O3)
1590+ Genericflight.menu.opt.o3std.build.flags.optimize=-O3
1591+ Genericflight.menu.opt.o3lto=Fastest (-O3) with LTO
1592+ Genericflight.menu.opt.o3lto.build.flags.optimize=-O3 -flto
1593+ Genericflight.menu.opt.ogstd=Debug (-g)
1594+ Genericflight.menu.opt.ogstd.build.flags.optimize=-g -Og
1595+
14881596# C Runtime Library
14891597Nucleo_144.menu.rtlib.nano=Newlib Nano (default)
14901598Nucleo_144.menu.rtlib.nanofp=Newlib Nano + Float Printf
@@ -1595,3 +1703,13 @@ RAK.menu.rtlib.full.build.flags.ldspecs=
159517033dprinter.menu.rtlib.nanofps.build.flags.ldspecs=--specs=nano.specs -u _printf_float -u _scanf_float
159617043dprinter.menu.rtlib.full=Newlib Standard
159717053dprinter.menu.rtlib.full.build.flags.ldspecs=
1706+
1707+ Genericflight.menu.rtlib.nano=Newlib Nano (default)
1708+ Genericflight.menu.rtlib.nanofp=Newlib Nano + Float Printf
1709+ Genericflight.menu.rtlib.nanofp.build.flags.ldspecs=--specs=nano.specs -u _printf_float
1710+ Genericflight.menu.rtlib.nanofs=Newlib Nano + Float Scanf
1711+ Genericflight.menu.rtlib.nanofs.build.flags.ldspecs=--specs=nano.specs -u _scanf_float
1712+ Genericflight.menu.rtlib.nanofps=Newlib Nano + Float Printf/Scanf
1713+ Genericflight.menu.rtlib.nanofps.build.flags.ldspecs=--specs=nano.specs -u _printf_float -u _scanf_float
1714+ Genericflight.menu.rtlib.full=Newlib Standard
1715+ Genericflight.menu.rtlib.full.build.flags.ldspecs=
0 commit comments