Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found
Select Git revision

Target

Select target project
  • avn/swd/skyward-boardcore
  • emilio.corigliano/skyward-boardcore
  • ettore.pane/skyward-boardcore
  • giulia.facchi/skyward-boardcore
  • valerio.flamminii/skyward-boardcore
  • nicolo.caruso/skyward-boardcore
6 results
Select Git revision
Show changes
Commits on Source (89)
{
BasedOnStyle: Google,
AccessModifierOffset: -4,
AlignConsecutiveAssignments: true,
AllowShortIfStatementsOnASingleLine: false,
AllowShortLoopsOnASingleLine: false,
BreakBeforeBraces: Allman,
ColumnLimit: 80,
ConstructorInitializerAllOnOneLineOrOnePerLine: false,
IndentCaseLabels: true,
IndentWidth: 4,
KeepEmptyLinesAtTheStartOfBlocks: true,
}
BasedOnStyle: Google
ColumnLimit: 80
IndentWidth: 4
AccessModifierOffset: -4
BreakBeforeBraces: Allman
# Allow braceless single line if/else/for/while statements
RemoveBracesLLVM: true
AlignConsecutiveAssignments: Consecutive
AllowShortIfStatementsOnASingleLine: false
AllowShortLoopsOnASingleLine: false
PackConstructorInitializers: BinPack
IndentCaseLabels: true
# Empty lines behavior
InsertNewlineAtEOF: true
KeepEmptyLinesAtEOF: true
KeepEmptyLinesAtTheStartOfBlocks: false
# Align pointers/references to the type, not the variable
DerivePointerAlignment: false
PointerAlignment: Left
......@@ -21,6 +21,7 @@ STM32F429zi_Discovery.xml
._*
.DS_Store
build
build-host
cmake-build-*
*.sublime-workspace
*.sublime-project
......
......@@ -23,7 +23,7 @@ variables:
GIT_SUBMODULE_STRATEGY: recursive
default:
image: registry.skywarder.eu/avn/swd/docker/miosix:latest
image: registry.skywarder.eu/avn/swd/docker/miosix:v3
stages:
- lint
......@@ -66,7 +66,7 @@ build-debug:
- cmake --version
- ccache --version
- ninja --version
- ./sbs --debug
- ./sbs build --debug
build-release:
stage: build
......@@ -74,7 +74,7 @@ build-release:
- cmake --version
- ccache --version
- ninja --version
- ./sbs
- ./sbs build
logdecoder:
stage: build
......@@ -88,7 +88,7 @@ logdecoder:
test:
stage: test
script:
- ./sbs --test catch-tests-boardcore
- ./sbs test
# Stage documentation
......
......@@ -19,6 +19,6 @@
[submodule "Miosix GUI library"]
path = libs/mxgui
url = https://git.skywarder.eu/avn/swd/third-party/mxgui.git
[submodule "Trivial serialization for C++"]
path = libs/tscpp
url = https://git.skywarder.eu/avn/swd/third-party/tscpp.git
[submodule "libs/socrate"]
path = libs/socrate
url = https://git.skywarder.eu/avn/swd/socrate.git
# Default ignored files
/shelf/
/workspace.xml
# Datasource local storage ignored files
/dataSources/
/dataSources.local.xml
# Editor-based HTTP Client requests
/httpRequests/
SkywardBoardcore
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="CMakeSharedSettings">
<configurations>
<configuration PROFILE_NAME="Debug" ENABLED="true" CONFIG_NAME="Debug" GENERATION_OPTIONS="-DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache -DCMAKE_TOOLCHAIN_FILE=$CMakeProjectDir$/libs/miosix-kernel/miosix/_tools/toolchain.cmake -GNinja" />
<configuration PROFILE_NAME="Release" ENABLED="true" CONFIG_NAME="Release" GENERATION_OPTIONS="-DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache -DCMAKE_TOOLCHAIN_FILE=$CMakeProjectDir$/libs/miosix-kernel/miosix/_tools/toolchain.cmake -GNinja" />
</configurations>
</component>
</project>
<component name="ProjectCodeStyleConfiguration">
<code_scheme name="Project" version="173">
<clangFormatSettings>
<option name="ENABLED" value="true" />
</clangFormatSettings>
</code_scheme>
</component>
<component name="ProjectCodeStyleConfiguration">
<state>
<option name="USE_PER_PROJECT_SETTINGS" value="true" />
</state>
</component>
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="CMakeWorkspace" PROJECT_DIR="$PROJECT_DIR$" />
<component name="CidrRootsConfiguration">
<sourceRoots>
<file path="$PROJECT_DIR$/src" />
</sourceRoots>
<excludeRoots>
<file path="$PROJECT_DIR$/build" />
<file path="$PROJECT_DIR$/libs" />
</excludeRoots>
</component>
</project>
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/.idea/skyward-boardcore.iml" filepath="$PROJECT_DIR$/.idea/skyward-boardcore.iml" />
</modules>
</component>
</project>
<?xml version="1.0" encoding="UTF-8"?>
<module classpath="CMake" type="CPP_MODULE" version="4" />
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$" vcs="Git" />
<mapping directory="$PROJECT_DIR$/libs/Catch2" vcs="Git" />
<mapping directory="$PROJECT_DIR$/libs/eigen" vcs="Git" />
<mapping directory="$PROJECT_DIR$/libs/fmt" vcs="Git" />
<mapping directory="$PROJECT_DIR$/libs/mavlink_skyward_lib" vcs="Git" />
<mapping directory="$PROJECT_DIR$/libs/miosix-kernel" vcs="Git" />
<mapping directory="$PROJECT_DIR$/libs/miosix-kernel/miosix/_examples/datalogger/tscpp" vcs="Git" />
<mapping directory="$PROJECT_DIR$/libs/mxgui" vcs="Git" />
<mapping directory="$PROJECT_DIR$/libs/tscpp" vcs="Git" />
</component>
</project>
......@@ -15,17 +15,19 @@
"${workspaceFolder}/libs/miosix-kernel/miosix/arch/common/CMSIS/Include",
"${workspaceFolder}/libs/mxgui",
"${workspaceFolder}/libs/tscpp",
"${workspaceFolder}/libs/socrate/include",
"${workspaceFolder}/src/shared",
"${workspaceFolder}/src/tests"
"${workspaceFolder}/src/tests",
"${workspaceFolder}/version"
]
},
"configurations": [
// Skyward boards
{
"name": "stm32f205rc_ciuti",
"cStandard": "c11",
"cppStandard": "c++14",
"compilerPath": "/opt/arm-miosix-eabi/bin/arm-miosix-eabi-g++",
"compileCommands": "${workspaceFolder}/build/compile_commands.json",
"defines": [
"${defaultDefines}",
"_MIOSIX_BOARDNAME=stm32f205rc_ciuti",
......@@ -48,6 +50,7 @@
"cStandard": "c11",
"cppStandard": "c++14",
"compilerPath": "/opt/arm-miosix-eabi/bin/arm-miosix-eabi-g++",
"compileCommands": "${workspaceFolder}/build/compile_commands.json",
"defines": [
"${defaultDefines}",
"_MIOSIX_BOARDNAME=stm32f429zi_death_stack_v1",
......@@ -72,6 +75,7 @@
"cStandard": "c11",
"cppStandard": "c++14",
"compilerPath": "/opt/arm-miosix-eabi/bin/arm-miosix-eabi-g++",
"compileCommands": "${workspaceFolder}/build/compile_commands.json",
"defines": [
"${defaultDefines}",
"_MIOSIX_BOARDNAME=stm32f429zi_death_stack_v2",
......@@ -95,6 +99,7 @@
"cStandard": "c11",
"cppStandard": "c++14",
"compilerPath": "/opt/arm-miosix-eabi/bin/arm-miosix-eabi-g++",
"compileCommands": "${workspaceFolder}/build/compile_commands.json",
"defines": [
"${defaultDefines}",
"_MIOSIX_BOARDNAME=stm32f429zi_death_stack_v3",
......@@ -118,6 +123,7 @@
"cStandard": "c11",
"cppStandard": "c++14",
"compilerPath": "/opt/arm-miosix-eabi/bin/arm-miosix-eabi-g++",
"compileCommands": "${workspaceFolder}/build/compile_commands.json",
"defines": [
"${defaultDefines}",
"_MIOSIX_BOARDNAME=stm32f429zi_nokia",
......@@ -141,6 +147,7 @@
"cStandard": "c11",
"cppStandard": "c++14",
"compilerPath": "/opt/arm-miosix-eabi/bin/arm-miosix-eabi-g++",
"compileCommands": "${workspaceFolder}/build/compile_commands.json",
"defines": [
"${defaultDefines}",
"_MIOSIX_BOARDNAME=stm32f429zi_parafoil",
......@@ -164,6 +171,7 @@
"cStandard": "c11",
"cppStandard": "c++14",
"compilerPath": "/opt/arm-miosix-eabi/bin/arm-miosix-eabi-g++",
"compileCommands": "${workspaceFolder}/build/compile_commands.json",
"defines": [
"${defaultDefines}",
"_MIOSIX_BOARDNAME=stm32f429zi_pyxis_auxiliary",
......@@ -186,6 +194,7 @@
"cStandard": "c11",
"cppStandard": "c++14",
"compilerPath": "/opt/arm-miosix-eabi/bin/arm-miosix-eabi-g++",
"compileCommands": "${workspaceFolder}/build/compile_commands.json",
"defines": [
"${defaultDefines}",
"_MIOSIX_BOARDNAME=stm32f429zi_rig",
......@@ -209,6 +218,7 @@
"cStandard": "c11",
"cppStandard": "c++14",
"compilerPath": "/opt/arm-miosix-eabi/bin/arm-miosix-eabi-g++",
"compileCommands": "${workspaceFolder}/build/compile_commands.json",
"defines": [
"${defaultDefines}",
"_MIOSIX_BOARDNAME=stm32f429zi_con_rig",
......@@ -227,11 +237,35 @@
"${workspaceFolder}/src/bsps/stm32f429zi_con_rig"
]
},
{
"name": "stm32f767zi_conrig_v2",
"cStandard": "c11",
"cppStandard": "c++14",
"compilerPath": "/opt/arm-miosix-eabi/bin/arm-miosix-eabi-g++",
"compileCommands": "${workspaceFolder}/build/compile_commands.json",
"defines": [
"${defaultDefines}",
"_MIOSIX_BOARDNAME=stm32f767zi_conrig_v2",
"_BOARD_STM32F767ZI_CONRIG_V2",
"_ARCH_CORTEXM7_STM32F7",
"HSE_VALUE=25000000",
"SYSCLK_FREQ_216MHz=216000000",
"__ENABLE_XRAM",
"V_DDA_VOLTAGE=3.3f"
],
"includePath": [
"${defaultIncludePaths}",
"${workspaceFolder}/libs/miosix-kernel/miosix/arch/cortexM7_stm32f7/common",
"${workspaceFolder}/src/bsps/stm32f767zi_conrig_v2/config",
"${workspaceFolder}/src/bsps/stm32f767zi_conrig_v2"
]
},
{
"name": "stm32f756zg_nucleo",
"cStandard": "c11",
"cppStandard": "c++14",
"compilerPath": "/opt/arm-miosix-eabi/bin/arm-miosix-eabi-g++",
"compileCommands": "${workspaceFolder}/build/compile_commands.json",
"defines": [
"${defaultDefines}",
"_MIOSIX_BOARDNAME=stm32f756zg_nucleo",
......@@ -255,6 +289,7 @@
"cStandard": "c11",
"cppStandard": "c++14",
"compilerPath": "/opt/arm-miosix-eabi/bin/arm-miosix-eabi-g++",
"compileCommands": "${workspaceFolder}/build/compile_commands.json",
"defines": [
"${defaultDefines}",
"_MIOSIX_BOARDNAME=stm32f767zi_automated_antennas",
......@@ -278,6 +313,7 @@
"cStandard": "c11",
"cppStandard": "c++14",
"compilerPath": "/opt/arm-miosix-eabi/bin/arm-miosix-eabi-g++",
"compileCommands": "${workspaceFolder}/build/compile_commands.json",
"defines": [
"${defaultDefines}",
"_MIOSIX_BOARDNAME=stm32f767zi_compute_unit",
......@@ -301,6 +337,7 @@
"cStandard": "c11",
"cppStandard": "c++14",
"compilerPath": "/opt/arm-miosix-eabi/bin/arm-miosix-eabi-g++",
"compileCommands": "${workspaceFolder}/build/compile_commands.json",
"defines": [
"${defaultDefines}",
"_MIOSIX_BOARDNAME=stm32f767zi_compute_unit_v2",
......@@ -324,6 +361,7 @@
"cStandard": "c11",
"cppStandard": "c++14",
"compilerPath": "/opt/arm-miosix-eabi/bin/arm-miosix-eabi-g++",
"compileCommands": "${workspaceFolder}/build/compile_commands.json",
"defines": [
"${defaultDefines}",
"_MIOSIX_BOARDNAME=stm32f767zi_rig_v2",
......@@ -347,12 +385,13 @@
"cStandard": "c11",
"cppStandard": "c++14",
"compilerPath": "/opt/arm-miosix-eabi/bin/arm-miosix-eabi-g++",
"compileCommands": "${workspaceFolder}/build/compile_commands.json",
"defines": [
"${defaultDefines}",
"_MIOSIX_BOARDNAME=stm32f767zi_lyra_biscotto",
"_BOARD_STM32F767ZI_BIKESHED",
"_BOARD_STM32F767ZI_LYRA_BISCOTTO",
"_ARCH_CORTEXM7_STM32F7",
"STM32F769xx",
"STM32F767xx",
"HSE_VALUE=25000000",
"SYSCLK_FREQ_216MHz=216000000",
"__ENABLE_XRAM",
......@@ -370,6 +409,7 @@
"cStandard": "c11",
"cppStandard": "c++14",
"compilerPath": "/opt/arm-miosix-eabi/bin/arm-miosix-eabi-g++",
"compileCommands": "${workspaceFolder}/build/compile_commands.json",
"defines": [
"${defaultDefines}",
"_MIOSIX_BOARDNAME=stm32f767zi_lyra_motor",
......@@ -393,6 +433,7 @@
"cStandard": "c11",
"cppStandard": "c++14",
"compilerPath": "/opt/arm-miosix-eabi/bin/arm-miosix-eabi-g++",
"compileCommands": "${workspaceFolder}/build/compile_commands.json",
"defines": [
"${defaultDefines}",
"_MIOSIX_BOARDNAME=stm32f767zi_death_stack_v4",
......@@ -416,6 +457,7 @@
"cStandard": "c11",
"cppStandard": "c++14",
"compilerPath": "/opt/arm-miosix-eabi/bin/arm-miosix-eabi-g++",
"compileCommands": "${workspaceFolder}/build/compile_commands.json",
"defines": [
"${defaultDefines}",
"_MIOSIX_BOARDNAME=stm32f767zi_gemini_gs",
......@@ -439,6 +481,7 @@
"cStandard": "c11",
"cppStandard": "c++14",
"compilerPath": "/opt/arm-miosix-eabi/bin/arm-miosix-eabi-g++",
"compileCommands": "${workspaceFolder}/build/compile_commands.json",
"defines": [
"${defaultDefines}",
"_MIOSIX_BOARDNAME=stm32f767zi_gemini_motor",
......@@ -457,12 +500,84 @@
"${workspaceFolder}/src/bsps/stm32f767zi_gemini_motor"
]
},
// Miosix boards
{
"name": "stm32f767zi_lyra_gs",
"cStandard": "c11",
"cppStandard": "c++14",
"compilerPath": "/opt/arm-miosix-eabi/bin/arm-miosix-eabi-g++",
"compileCommands": "${workspaceFolder}/build/compile_commands.json",
"defines": [
"${defaultDefines}",
"_MIOSIX_BOARDNAME=stm32f767zi_lyra_gs",
"_BOARD_STM32F767ZI_LYRA_GS",
"_ARCH_CORTEXM7_STM32F7",
"STM32F767xx",
"HSE_VALUE=25000000",
"SYSCLK_FREQ_216MHz=216000000",
"__ENABLE_XRAM",
"V_DDA_VOLTAGE=3.3f"
],
"includePath": [
"${defaultIncludePaths}",
"${workspaceFolder}/libs/miosix-kernel/miosix/arch/cortexM7_stm32f7/common",
"${workspaceFolder}/src/bsps/stm32f767zi_lyra_gs/config",
"${workspaceFolder}/src/bsps/stm32f767zi_lyra_gs"
]
},
{
"name": "stm32f767zi_orion_biscotto",
"cStandard": "c11",
"cppStandard": "c++14",
"compilerPath": "/opt/arm-miosix-eabi/bin/arm-miosix-eabi-g++",
"compileCommands": "${workspaceFolder}/build/compile_commands.json",
"defines": [
"${defaultDefines}",
"_MIOSIX_BOARDNAME=stm32f767zi_orion_biscotto",
"_BOARD_STM32F767ZI_ORION_BISCOTTO",
"_ARCH_CORTEXM7_STM32F7",
"STM32F767xx",
"HSE_VALUE=25000000",
"SYSCLK_FREQ_216MHz=216000000",
"__ENABLE_XRAM",
"V_DDA_VOLTAGE=3.3f"
],
"includePath": [
"${defaultIncludePaths}",
"${workspaceFolder}/libs/miosix-kernel/miosix/arch/cortexM7_stm32f7/common",
"${workspaceFolder}/src/bsps/stm32f767zi_orion_biscotto/config",
"${workspaceFolder}/src/bsps/stm32f767zi_orion_biscotto"
]
},
{
"name": "stm32f767zi_orion_engine",
"cStandard": "c11",
"cppStandard": "c++14",
"compilerPath": "/opt/arm-miosix-eabi/bin/arm-miosix-eabi-g++",
"compileCommands": "${workspaceFolder}/build/compile_commands.json",
"defines": [
"${defaultDefines}",
"_MIOSIX_BOARDNAME=stm32f767zi_orion_engine",
"_BOARD_STM32F767ZI_ORION_ENGINE",
"_ARCH_CORTEXM7_STM32F7",
"STM32F767xx",
"HSE_VALUE=25000000",
"SYSCLK_FREQ_216MHz=216000000",
"__ENABLE_XRAM",
"V_DDA_VOLTAGE=3.3f"
],
"includePath": [
"${defaultIncludePaths}",
"${workspaceFolder}/libs/miosix-kernel/miosix/arch/cortexM7_stm32f7/common",
"${workspaceFolder}/src/bsps/stm32f767zi_orion_engine/config",
"${workspaceFolder}/src/bsps/stm32f767zi_orion_engine"
]
},
{
"name": "stm32f407vg_stm32f4discovery",
"cStandard": "c11",
"cppStandard": "c++14",
"compilerPath": "/opt/arm-miosix-eabi/bin/arm-miosix-eabi-g++",
"compileCommands": "${workspaceFolder}/build/compile_commands.json",
"defines": [
"${defaultDefines}",
"_MIOSIX_BOARDNAME=stm32f407vg_stm32f4discovery",
......@@ -485,6 +600,7 @@
"cStandard": "c11",
"cppStandard": "c++14",
"compilerPath": "/opt/arm-miosix-eabi/bin/arm-miosix-eabi-g++",
"compileCommands": "${workspaceFolder}/build/compile_commands.json",
"defines": [
"${defaultDefines}",
"_MIOSIX_BOARDNAME=stm32f429zi_stm32f4discovery",
......@@ -508,6 +624,7 @@
"cStandard": "c11",
"cppStandard": "c++14",
"compilerPath": "/opt/arm-miosix-eabi/bin/arm-miosix-eabi-g++",
"compileCommands": "${workspaceFolder}/build/compile_commands.json",
"defines": [
"${defaultDefines}",
"_MIOSIX_BOARDNAME=stm32f767zi_nucleo",
......@@ -531,6 +648,7 @@
"cStandard": "c11",
"cppStandard": "c++14",
"compilerPath": "/opt/arm-miosix-eabi/bin/arm-miosix-eabi-g++",
"compileCommands": "${workspaceFolder}/build/compile_commands.json",
"defines": [
"${defaultDefines}",
"_MIOSIX_BOARDNAME=stm32f769ni_discovery",
......@@ -548,6 +666,46 @@
"${workspaceFolder}/libs/miosix-kernel/miosix/arch/cortexM7_stm32f7/stm32f769ni_discovery",
"${workspaceFolder}/libs/miosix-kernel/miosix/config/arch/cortexM7_stm32f7/stm32f769ni_discovery"
]
},
{
"name": "stm32f429zi_lyra_cubesat",
"cStandard": "c11",
"cppStandard": "c++14",
"compilerPath": "/opt/arm-miosix-eabi/bin/arm-miosix-eabi-g++",
"compileCommands": "${workspaceFolder}/build/compile_commands.json",
"defines": [
"${defaultDefines}",
"_MIOSIX_BOARDNAME=stm32f429zi_lyra_cubesat",
"_BOARD_STM32F429ZI_LYRA_CUBESAT",
"_ARCH_CORTEXM4_STM32F4",
"STM32F429xx",
"HSE_VALUE=8000000",
"SYSCLK_FREQ_168MHz=168000000",
"__ENABLE_XRAM",
"V_DDA_VOLTAGE=3.3f"
],
"includePath": [
"${defaultIncludePaths}",
"${workspaceFolder}/libs/miosix-kernel/miosix/arch/cortexM4_stm32f4/common",
"${workspaceFolder}/src/bsps/stm32f429zi_lyra_cubesat/config",
"${workspaceFolder}/src/bsps/stm32f429zi_lyra_cubesat"
]
},
{
"name": "logdecoder",
"includePath": [
"${defaultIncludePaths}",
"${workspaceFolder}/skyward-boardcore/libs/miosix-host"
],
"defines": [
"COMPILE_FOR_HOST",
"COMPILE_FOR_X86",
"FMT_HEADER_ONLY"
],
"compilerPath": "/usr/bin/g++",
"cStandard": "c17",
"intelliSenseMode": "linux-gcc-x64",
"cppStandard": "c++20"
}
],
"version": 4
......
......@@ -55,6 +55,7 @@ flags = [
'-Ilibs/miosix-kernel/miosix/arch/common',
'-Ilibs/miosix-kernel/miosix/arch/cortexM4_stm32f4/common',
'-Ilibs/miosix-kernel/miosix/arch/cortexM4_stm32f4/stm32f429zi_stm32f4discovery',
'-Ilibs/socrate/include',
'-Ilibs/eigen',
'-Imiosix',
'-Imiosix-kernel',
......
......@@ -21,13 +21,13 @@
cmake_minimum_required(VERSION 3.25)
enable_testing()
include(cmake/sbs.cmake)
#-----------------------------------------------------------------------------#
# Project #
#-----------------------------------------------------------------------------#
project(Boardcore)
include(cmake/sbs.cmake)
#-----------------------------------------------------------------------------#
# Entrypoints #
......@@ -45,8 +45,9 @@ sbs_target(config-dsgamma stm32f429zi_stm32f4discovery)
add_executable(imu-calibration src/entrypoints/imu-calibration.cpp)
sbs_target(imu-calibration stm32f429zi_parafoil)
add_executable(mxgui-helloworld src/entrypoints/examples/mxgui-helloworld.cpp)
sbs_target(mxgui-helloworld stm32f429zi_stm32f4discovery)
# This executable fails during linking with the error: undefined reference to `__cxa_throw_bad_array_new_length'
# add_executable(mxgui-helloworld src/entrypoints/examples/mxgui-helloworld.cpp)
# sbs_target(mxgui-helloworld stm32f429zi_stm32f4discovery)
add_executable(compute-unit-v2-testsuite src/entrypoints/compute-unit-v2-testsuite.cpp)
sbs_target(compute-unit-v2-testsuite stm32f767zi_compute_unit_v2_no_xram)
......@@ -129,6 +130,7 @@ sbs_target(test-hil stm32f767zi_death_stack_v4)
add_executable(catch-tests-boardcore
src/tests/catch/catch-tests-entry.cpp
src/tests/catch/skyQuaternion/test-skyquaternion.cpp
src/tests/catch/examples/example-test-factorial.cpp
src/tests/catch/test-aero.cpp
# src/tests/catch/test-buttonhandler.cpp
......@@ -147,6 +149,7 @@ add_executable(catch-tests-boardcore
src/tests/catch/test-pitot.cpp
src/tests/catch/test-units.cpp
src/tests/catch/test-registry-frontend.cpp
src/tests/catch/propagator/test-propagator.cpp
)
target_compile_definitions(catch-tests-boardcore PRIVATE USE_MOCK_PERIPHERALS)
sbs_target(catch-tests-boardcore stm32f429zi_stm32f4discovery)
......@@ -282,6 +285,9 @@ sbs_target(test-usart-f4 stm32f429zi_stm32f4discovery)
add_executable(test-usart-f7 src/tests/drivers/usart/test-usart.cpp)
sbs_target(test-usart-f7 stm32f767zi_nucleo)
add_executable(test-dma-mem-to-mem src/tests/drivers/test-dma-mem-to-mem.cpp)
sbs_target(test-dma-mem-to-mem stm32f767zi_compute_unit)
add_executable(test-i2c-driver-f4 src/tests/drivers/i2c/test-i2c-driver.cpp)
sbs_target(test-i2c-driver-f4 stm32f429zi_stm32f4discovery)
......@@ -300,6 +306,9 @@ sbs_target(test-wiz5500 stm32f767zi_gemini_gs)
add_executable(test-bsram src/tests/drivers/test-bsram.cpp)
sbs_target(test-bsram stm32f767zi_lyra_biscotto)
add_executable(test-dipswitch src/tests/drivers/test-dipswitch.cpp)
sbs_target(test-dipswitch stm32f767zi_lyra_gs)
#-----------------------------------------------------------------------------#
# Tests - Events #
#-----------------------------------------------------------------------------#
......@@ -463,6 +472,10 @@ sbs_target(test-vn100-serial stm32f407vg_stm32f4discovery)
add_executable(test-vn100-spi src/tests/sensors/test-vn100-spi.cpp)
sbs_target(test-vn100-spi stm32f407vg_stm32f4discovery)
add_executable(test-vn300 src/tests/sensors/test-vn300.cpp)
sbs_target(test-vn300 stm32f767zi_compute_unit)
add_executable(test-lis2mdl src/tests/sensors/test-lis2mdl.cpp)
sbs_target(test-lis2mdl stm32f429zi_stm32f4discovery)
......@@ -478,6 +491,9 @@ sbs_target(test-lps22df stm32f767zi_nucleo)
add_executable(test-lsm6dsrx src/tests/sensors/test-lsm6dsrx.cpp)
sbs_target(test-lsm6dsrx stm32f407vg_stm32f4discovery)
add_executable(test-nd015x src/tests/sensors/test-nd015x.cpp)
sbs_target(test-nd015x stm32f767zi_lyra_biscotto)
#-----------------------------------------------------------------------------#
# Tests - Utils #
#-----------------------------------------------------------------------------#
......
......@@ -29,11 +29,17 @@ The project is built with the CMake build system. We also have our own script th
### Dependencies
The following are required to build the project:
* `CMake` 3.25
* `Git`
* `Miosix` Toolchain
We also recommend to install `Ccache`, `Ninja`, `OpenOCD`, `Cppcheck`,`ClangFormat` and `pre-commit` for a smoother development experience.
You will also need the following tools for linting and formatting:
* `Python3`
* `Cppcheck 2.7`
* `ClangFormat 18`
We also recommend to install `Ccache`, `Ninja`, `OpenOCD`, and `pre-commit` for a smoother development experience.
### Cloning the repo
......
......@@ -36,6 +36,7 @@ set(BOARDCORE_HOST_SRC
${SBS_BASE}/src/shared/algorithms/MEA/MEA.cpp
${SBS_BASE}/src/shared/algorithms/AirBrakes/AirBrakesPI.cpp
${SBS_BASE}/src/shared/algorithms/AirBrakes/AirBrakesInterp.cpp
${SBS_BASE}/src/shared/algorithms/Propagator/Propagator.cpp
# Logger
${SBS_BASE}/src/shared/logger/Logger.cpp
......@@ -69,11 +70,11 @@ target_include_directories(boardcore-host PUBLIC ${BOARDCORE_PATH}/src/shared)
# Link libraries
target_link_libraries(boardcore-host PUBLIC
Miosix::Miosix::host
TSCPP::TSCPP
Eigen3::Eigen
fmt::fmt-header-only
Catch2::Catch2
Mavlink::Mavlink
Socrate::Socrate
)
# Create a nice alias for the library
......
......@@ -19,8 +19,10 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
# THE SOFTWARE.
# Load in BOARDCORE_PATH the project path
# Load in BOARDCORE_PATH the project path if not already defined
if (NOT DEFINED BOARDCORE_PATH)
cmake_path(GET CMAKE_CURRENT_LIST_DIR PARENT_PATH BOARDCORE_PATH)
endif()
# Include dependencies and board list
include(${BOARDCORE_PATH}/cmake/dependencies.cmake)
......@@ -42,6 +44,8 @@ set(BOARDCORE_SRC
${BOARDCORE_PATH}/src/shared/algorithms/AirBrakes/AirBrakesInterp.cpp
${BOARDCORE_PATH}/src/shared/algorithms/NAS/NAS.cpp
${BOARDCORE_PATH}/src/shared/algorithms/NAS/StateInitializer.cpp
${SBS_BASE}/src/shared/algorithms/Propagator/Propagator.cpp
${SBS_BASE}/src/shared/algorithms/Follower/Follower.cpp
# Debug
${BOARDCORE_PATH}/src/shared/utils/Debug.cpp
......@@ -54,16 +58,20 @@ set(BOARDCORE_SRC
${BOARDCORE_PATH}/src/shared/drivers/canbus/CanDriver/CanDriver.cpp
${BOARDCORE_PATH}/src/shared/drivers/canbus/CanDriver/CanInterrupt.cpp
${BOARDCORE_PATH}/src/shared/drivers/canbus/CanProtocol/CanProtocol.cpp
${BOARDCORE_PATH}/src/shared/drivers/dma/DMA.cpp
${BOARDCORE_PATH}/src/shared/drivers/dma/DMADefs.cpp
${BOARDCORE_PATH}/src/shared/drivers/interrupt/external_interrupts.cpp
${BOARDCORE_PATH}/src/shared/drivers/timer/PWM.cpp
${BOARDCORE_PATH}/src/shared/drivers/timer/CountedPWM.cpp
${BOARDCORE_PATH}/src/shared/drivers/runcam/Runcam.cpp
${BOARDCORE_PATH}/src/shared/drivers/spi/SPITransaction.cpp
${BOARDCORE_PATH}/src/shared/drivers/spi/SPITransactionDMA.cpp
${BOARDCORE_PATH}/src/shared/drivers/usart/USART.cpp
${BOARDCORE_PATH}/src/shared/drivers/i2c/I2CDriver-f4.cpp
${BOARDCORE_PATH}/src/shared/drivers/i2c/I2CDriver-f7.cpp
${BOARDCORE_PATH}/src/shared/drivers/i2c/I2C.cpp
${BOARDCORE_PATH}/src/shared/drivers/WIZ5500/WIZ5500.cpp
${BOARDCORE_PATH}/src/shared/drivers/DipSwitch/DipSwitch.cpp
# Events
${BOARDCORE_PATH}/src/shared/events/EventBroker.cpp
......@@ -109,12 +117,16 @@ set(BOARDCORE_SRC
${BOARDCORE_PATH}/src/shared/sensors/SensorSampler.cpp
${BOARDCORE_PATH}/src/shared/sensors/UBXGPS/UBXGPSSerial.cpp
${BOARDCORE_PATH}/src/shared/sensors/UBXGPS/UBXGPSSpi.cpp
${BOARDCORE_PATH}/src/shared/sensors/VN100/VN100Serial.cpp
${BOARDCORE_PATH}/src/shared/sensors/VN100/VN100Spi.cpp
${BOARDCORE_PATH}/src/shared/sensors/Vectornav/VNCommonSerial.cpp
${BOARDCORE_PATH}/src/shared/sensors/Vectornav/VN100/VN100Serial.cpp
${BOARDCORE_PATH}/src/shared/sensors/Vectornav/VN100/VN100Spi.cpp
${BOARDCORE_PATH}/src/shared/sensors/Vectornav/VN300/VN300.cpp
${BOARDCORE_PATH}/src/shared/sensors/LIS2MDL/LIS2MDL.cpp
${BOARDCORE_PATH}/src/shared/sensors/LPS28DFW/LPS28DFW.cpp
${BOARDCORE_PATH}/src/shared/sensors/LPS22DF/LPS22DF.cpp
${BOARDCORE_PATH}/src/shared/sensors/LSM6DSRX/LSM6DSRX.cpp
${BOARDCORE_PATH}/src/shared/sensors/ND015X/ND015D.cpp
${BOARDCORE_PATH}/src/shared/sensors/ND015X/ND015A.cpp
# Calibration
${BOARDCORE_PATH}/src/shared/sensors/calibration/BiasCalibration/BiasCalibration.cpp
......@@ -160,11 +172,11 @@ function(add_boardcore_library BOARD_OPTIONS_FILE)
target_link_libraries(${BOARDCORE_LIB} PUBLIC
$<TARGET_OBJECTS:Miosix::Boot::${BOARD_NAME}>
$<LINK_GROUP:RESCAN,Miosix::Kernel::${BOARD_NAME},stdc++,c,m,gcc,atomic>
TSCPP::TSCPP
Eigen3::Eigen
fmt::fmt-header-only
Catch2::Catch2
Mavlink::Mavlink
Socrate::Socrate
)
# Link MxGui if supported by the target
......
......@@ -38,6 +38,11 @@ set(BOARDCORE_BOARDS_OPTIONS_FILES
${BOARDCORE_PATH}/src/bsps/stm32f767zi_gemini_motor/config/board_options.cmake
${BOARDCORE_PATH}/src/bsps/stm32f767zi_death_stack_v4/config/board_options.cmake
${BOARDCORE_PATH}/src/bsps/stm32f767zi_rig_v2/config/board_options.cmake
${BOARDCORE_PATH}/src/bsps/stm32f767zi_conrig_v2/config/board_options.cmake
${BOARDCORE_PATH}/src/bsps/stm32f767zi_lyra_biscotto/config/board_options.cmake
${BOARDCORE_PATH}/src/bsps/stm32f767zi_lyra_motor/config/board_options.cmake
${BOARDCORE_PATH}/src/bsps/stm32f767zi_lyra_gs/config/board_options.cmake
${BOARDCORE_PATH}/src/bsps/stm32f429zi_lyra_cubesat/config/board_options.cmake
${BOARDCORE_PATH}/src/bsps/stm32f767zi_orion_biscotto/config/board_options.cmake
${BOARDCORE_PATH}/src/bsps/stm32f767zi_orion_engine/config/board_options.cmake
)