diff --git a/hardcopy.0 b/hardcopy.0 deleted file mode 100644 index 56c5675605d86ad6275022a675405fcc96b02038..0000000000000000000000000000000000000000 --- a/hardcopy.0 +++ /dev/null @@ -1,17 +0,0 @@ -Mag [18446744027136.0000 s]: 3.99 -25.26 -7.49 -Gyr [18446744027136.0000 s]: 0.06 0.30 0.00 -Acc [18446744027136.0000 s]: 0.08 0.06 1.01 -Mag [18446744027136.0000 s]: 4.65 -24.93 -7.49 -Gyr [18446744027136.0000 s]: 0.00 0.24 0.12 -Acc [18446744027136.0000 s]: 0.08 0.06 1.01 -Mag [18446744027136.0000 s]: 4.32 -25.60 -7.49 -Gyr [18446744027136.0000 s]: -0.18 0.18 0.18 -Acc [18446744027136.0000 s]: 0.07 0.06 1.01 ------- CORRECTED AVERAGE VALUES: ------ -67.79> Number of accelerometer samples considered: 47 -67.80> Number of magnetometer samples considered: 47 -67.80> Number of gyroscope samples considered: 47 -Mag [0.0000 s]: 8.87 -50.70 -14.96 -Gyr [0.0000 s]: -0.13 0.56 0.14 -Acc [0.0000 s]: 0.00 5.56 94.90 - diff --git a/ide/vscode/c_cpp_properties.json b/ide/vscode/c_cpp_properties.json new file mode 100755 index 0000000000000000000000000000000000000000..d86fc75194e21468497092214c3f4877d69d0193 --- /dev/null +++ b/ide/vscode/c_cpp_properties.json @@ -0,0 +1,62 @@ +{ + "configurations": [ + { + "name": "stm32f429zi_skyward_death_stack_x", + "cStandard": "c11", + "cppStandard": "c++11", + "compilerPath": "/opt/arm-miosix-eabi/bin/arm-miosix-eabi-g++", + "defines": [ + "DEBUG", + "_ARCH_CORTEXM4_STM32F4", + "_BOARD_stm32f429zi_skyward_death_stack", + "_MIOSIX_BOARDNAME=stm32f429zi_skyward_death_stack", + "HSE_VALUE=8000000", + "SYSCLK_FREQ_168MHz=168000000", + "_MIOSIX", + "__cplusplus=201103L" + ], + "includePath": [ + "${workspaceFolder}/skyward-boardcore/libs/miosix-kernel/miosix/config/arch/cortexM4_stm32f4/stm32f429zi_skyward_death_stack", + "${workspaceFolder}/skyward-boardcore/libs/miosix-kernel/miosix/arch/cortexM4_stm32f4/stm32f429zi_skyward_death_stack", + "${workspaceFolder}/skyward-boardcore/libs/miosix-kernel/miosix/arch/cortexM4_stm32f4/common", + "${workspaceFolder}/skyward-boardcore/libs/miosix-kernel/miosix/arch/common", + "${workspaceFolder}/skyward-boardcore/libs/miosix-kernel/miosix", + "${workspaceFolder}/skyward-boardcore/libs/simple-template-matrix", + "${workspaceFolder}/skyward-boardcore/libs/fmt/include", + "${workspaceFolder}/skyward-boardcore/libs/eigen", + "${workspaceFolder}/skyward-boardcore/libs", + "${workspaceFolder}/skyward-boardcore/src/shared", + "${workspaceFolder}/skyward-boardcore/src/tests", + "${workspaceFolder}/src/boards/DeathStack", + "${workspaceFolder}/src/boards" + ], + "browse": { + "path": [ + "${workspaceFolder}/skyward-boardcore/libs/miosix-kernel/miosix/config/arch/cortexM4_stm32f4/stm32f429zi_skyward_death_stack_x", + "${workspaceFolder}/skyward-boardcore/libs/miosix-kernel/miosix/arch/cortexM4_stm32f4/stm32f429zi_skyward_death_stack_x", + "${workspaceFolder}/skyward-boardcore/libs/miosix-kernel/miosix/arch/cortexM4_stm32f4/common", + "${workspaceFolder}/skyward-boardcore/libs/miosix-kernel/miosix/stdlib_integration", + "${workspaceFolder}/skyward-boardcore/libs/miosix-kernel/miosix/arch/common", + "${workspaceFolder}/skyward-boardcore/libs/miosix-kernel/miosix/interfaces", + "${workspaceFolder}/skyward-boardcore/libs/miosix-kernel/miosix/filesystem", + "${workspaceFolder}/skyward-boardcore/libs/miosix-kernel/miosix/kernel", + "${workspaceFolder}/skyward-boardcore/libs/miosix-kernel/miosix/util", + "${workspaceFolder}/skyward-boardcore/libs/miosix-kernel/miosix/e20", + "${workspaceFolder}/skyward-boardcore/libs/miosix-kernel/miosix/*", + "${workspaceFolder}/skyward-boardcore/libs/simple-template-matrix", + "${workspaceFolder}/skyward-boardcore/libs/mavlink_skyward_lib", + "${workspaceFolder}/skyward-boardcore/libs/eigen", + "${workspaceFolder}/skyward-boardcore/libs/tscpp", + "${workspaceFolder}/skyward-boardcore/libs/mxgui", + "${workspaceFolder}/skyward-boardcore/libs/fmt", + "${workspaceFolder}/skyward-boardcore/src/shared", + "${workspaceFolder}/skyward-boardcore/src/tests", + "${workspaceFolder}/src/boards", + "${workspaceFolder}/src/tests" + ], + "limitSymbolsToIncludedHeaders": true + } + } + ], + "version": 4 +} diff --git a/ide/vscode/launch.json b/ide/vscode/launch.json new file mode 100644 index 0000000000000000000000000000000000000000..3e9272fde8f6474f08b9803f2c3e3cf547050d0f --- /dev/null +++ b/ide/vscode/launch.json @@ -0,0 +1,33 @@ +{ + "version": "0.2.0", + "configurations": [ + { + "cwd": "${workspaceRoot}", + "executable": "${workspaceFolder}/bin/${fileBasenameNoExtension}/${fileBasenameNoExtension}.elf", + "name": "ST-LINK V2 (current entrypoint)", + "request": "attach", + "type": "cortex-debug", + "servertype": "openocd", + "device": "STM32F429ZI", + "armToolchainPath": "/opt/arm-miosix-eabi/bin", + "toolchainPrefix": "arm-miosix-eabi", + "configFiles": [ + "${workspaceFolder}/data/gdb/stm32f4-stlinv2.cfg" + ] + }, + { + "cwd": "${workspaceRoot}", + "executable": "${workspaceFolder}/bin/${fileBasenameNoExtension}/${fileBasenameNoExtension}.elf", + "name": "ST-LINK V1 (current entrypoint)", + "request": "attach", + "type": "cortex-debug", + "servertype": "openocd", + "device": "STM32F429ZI", + "armToolchainPath": "/opt/arm-miosix-eabi/bin", + "toolchainPrefix": "arm-miosix-eabi", + "configFiles": [ + "${workspaceFolder}/libs/miosix-kernel/miosix/arch/cortexM4_stm32f4/stm32f429zi_skyward_death_stack/death_stack.cfg" + ] + } + ] +} \ No newline at end of file diff --git a/ide/vscode/tasks.json b/ide/vscode/tasks.json new file mode 100755 index 0000000000000000000000000000000000000000..3afed1afbf7ea2f36e4c773f52487bdfe1f46f34 --- /dev/null +++ b/ide/vscode/tasks.json @@ -0,0 +1,111 @@ +{ + "version": "2.0.0", + "tasks": [ + { + "label": "Show Workspace Folder", + "type": "shell", + "windows": { + "command": "echo ${workspaceFolder}" + }, + "problemMatcher": [] + }, + { + "label": "CLEAN", + "type": "shell", + "windows": { + "command": "python sbs -c" + }, + "linux": { + "command": "./sbs -c" + }, + "problemMatcher": "$gcc" + }, + { + "label": "BUILD all", + "type": "shell", + "windows": { + "command": "python sbs" + }, + "linux": { + "command": "./sbs" + }, + "problemMatcher": "$gcc" + }, + { + "label": "BUILD current-entrypoint", + "type": "shell", + "windows": { + "command": "python sbs -v -n -b ${fileBasenameNoExtension}" + }, + "linux": { + "command": "./sbs -v -b ${fileBasenameNoExtension}" + }, + "problemMatcher": "$gcc" + }, + { + "label": "RUN current-entrypoint", + "type": "shell", + "windows": { + "command": "ST-LINK_CLI.exe -P bin/${fileBasenameNoExtension}/${fileBasenameNoExtension}.bin 0x8000000 -V -Rst" + }, + "linux": { + "command": "st-flash write bin/${fileBasenameNoExtension}/${fileBasenameNoExtension}.bin 0x8000000" + }, + "problemMatcher": [] + }, + { + "label": "BUILD+RUN current-entrypoint", + "type": "shell", + "windows": { + "command": "ST-LINK_CLI.exe -P bin/${fileBasenameNoExtension}/${fileBasenameNoExtension}.bin 0x8000000 -V -Rst" + }, + "linux": { + "command": "sleep 1;st-flash write bin/${fileBasenameNoExtension}/${fileBasenameNoExtension}.bin 0x8000000" + }, + "problemMatcher": [], + "dependsOn": [ + "BUILD current-entrypoint" + ], + "group": { + "kind": "build", + "isDefault": true + } + }, + { + "label": "BUILD tests-catch", + "type": "shell", + "windows": { + "command": "python sbs -v -n -b tests-catch" + }, + "linux": { + "command": "./sbs -v -b tests-catch" + }, + "problemMatcher": "$gcc" + }, + { + "label": "RUN tests-catch", + "type": "shell", + "windows": { + "command": "ST-LINK_CLI.exe -P bin/tests-catch/tests-catch.bin 0x8000000 -V" + }, + "linux": { + "command": "st-flash write bin/tests-catch/tests-catch.bin 0x8000000" + }, + "problemMatcher": [] + }, + { + "type": "shell", + "label": "arm-miosix-eabi-g++ build active file", + "command": "/opt/arm-miosix-eabi/bin/arm-miosix-eabi-g++", + "args": [ + "-g", + "${file}", + "-o", + "${fileDirname}/${fileBasenameNoExtension}" + ], + "options": { + "cwd": "/opt/arm-miosix-eabi/bin" + } + } + ] +} \ No newline at end of file diff --git a/sbs.conf b/sbs.conf index 9543d505e52d7e2b9f982f163b49f5b1e9177136..b4f278ab0dfbb10da8945cae9ed34e9bf5c90036 100644 --- a/sbs.conf +++ b/sbs.conf @@ -80,8 +80,6 @@ SBS_BASE: skyward-boardcore PROJECT_INCLUDES: -Isrc/boards -Isrc/boards/DeathStack -Iskyward-boardcore/src/shared - -Iskyward-boardcore - -Iskyward-boardcore/src/shared -Iskyward-boardcore/libs/mavlink_skyward_lib -Iskyward-boardcore/libs/eigen PROJECT_SUBDIRS: diff --git a/screenlog.0 b/screenlog.0 deleted file mode 100644 index e12b689ed3dc098163bae33bf25c980aebd5c13a..0000000000000000000000000000000000000000 --- a/screenlog.0 +++ /dev/null @@ -1,112 +0,0 @@ ----------------------------- -16.65> Fifo len: 996 -Tick: 12.1855 s, Now: 16.6189 s -Temp: 29.23 deg -Fill: 66 ------ FIFO VALUES: ------- -Mag [7.0766 s]: 3.99 -24.60 -7.46 -Gyr [11.5255 s]: -0.12 0.24 0.12 -Acc [11.5255 s]: 0.07 0.06 1.01 -Mag [11.5355 s]: 4.32 -24.93 -7.45 -Gyr [11.5355 s]: 0.06 0.43 0.00 -Acc [11.5355 s]: 0.08 0.06 1.01 -Mag [11.5355 s]: 4.32 -24.93 -7.45 -Gyr [11.5455 s]: -0.06 0.30 0.12 -Acc [11.5455 s]: 0.08 0.06 1.01 -Mag [11.5355 s]: 4.32 -24.93 -7.45 -Gyr [11.5555 s]: -0.06 0.30 0.06 -Acc [11.5555 s]: 0.08 0.06 1.01 -Mag [11.5355 s]: 4.32 -24.93 -7.45 -Gyr [11.5655 s]: -0.06 0.37 0.06 -Acc [11.5655 s]: 0.08 0.06 1.01 ------- CORRECTED AVERAGE VALUES: ------ -16.71> Number of accelerometer samples considered: 66 -16.71> Number of magnetometer samples considered: 18 -16.72> Number of gyroscope samples considered: 66 -Mag [16.6947 s]: 8.86 -49.74 -15.03 -Gyr [16.6947 s]: -0.15 0.56 0.16 -Acc [16.6947 s]: 0.15 0.12 2.02 ----------------------------- -21.73> Fifo len: 988 -Tick: 17.2743 s, Now: 21.7059 s -Temp: 29.17 deg -Fill: 66 ------ FIFO VALUES: ------- -Mag [12.1755 s]: 4.65 -25.26 -7.57 -Gyr [16.6143 s]: -0.06 0.06 0.06 -Acc [16.6143 s]: 0.08 0.06 1.01 -Mag [12.1755 s]: 4.65 -25.26 -7.57 -Gyr [16.6243 s]: -0.06 0.24 0.00 -Acc [16.6243 s]: 0.08 0.06 1.01 -Mag [12.1755 s]: 4.65 -25.26 -7.57 -Gyr [16.6343 s]: -0.06 0.37 0.00 -Acc [16.6343 s]: 0.08 0.06 1.01 -Mag [16.6443 s]: 4.99 -25.59 -7.45 -Gyr [16.6443 s]: -0.18 0.43 0.12 -Acc [16.6443 s]: 0.08 0.06 1.01 -Mag [16.6443 s]: 4.99 -25.59 -7.45 -Gyr [16.6543 s]: -0.18 0.37 0.06 -Acc [16.6543 s]: 0.07 0.06 1.01 ------- CORRECTED AVERAGE VALUES: ------ -21.80> Number of accelerometer samples considered: 66 -21.80> Number of magnetometer samples considered: 17 -21.80> Number of gyroscope samples considered: 66 -Mag [21.7819 s]: 9.07 -50.25 -15.00 -Gyr [21.7819 s]: -0.18 0.54 0.16 -Acc [21.7819 s]: 0.15 0.12 2.02 ----------------------------- -26.82> Fifo len: 1001 -Tick: 22.3632 s, Now: 26.7929 s -Temp: 29.19 deg -Fill: 66 ------ FIFO VALUES: ------- -Mag [17.2443 s]: 3.99 -24.93 -7.57 -Gyr [21.7032 s]: -0.06 0.24 0.12 -Acc [21.7032 s]: 0.08 0.06 1.01 -Mag [21.7132 s]: 4.65 -25.26 -7.45 -Gyr [21.7132 s]: -0.06 0.30 0.00 -Acc [21.7132 s]: 0.08 0.06 1.01 -Mag [21.7132 s]: 4.65 -25.26 -7.45 -Gyr [21.7232 s]: -0.12 0.37 0.00 -Acc [21.7232 s]: 0.08 0.06 1.01 -Mag [21.7132 s]: 4.65 -25.26 -7.45 -Gyr [21.7332 s]: -0.12 0.30 0.06 -Acc [21.7332 s]: 0.08 0.06 1.01 -Mag [21.7132 s]: 4.65 -25.26 -7.45 -Gyr [21.7432 s]: -0.12 0.37 0.06 -Acc [21.7432 s]: 0.08 0.06 1.01 ------- CORRECTED AVERAGE VALUES: ------ -26.88> Number of accelerometer samples considered: 66 -26.89> Number of magnetometer samples considered: 18 -26.89> Number of gyroscope samples considered: 66 -Mag [26.8691 s]: 8.79 -50.15 -14.94 -Gyr [26.8691 s]: -0.15 0.59 0.15 -Acc [26.8691 s]: 0.15 0.12 2.02 ----------------------------- -31.91> Fifo len: 996 -Tick: 27.4520 s, Now: 31.8800 s -Temp: 29.12 deg -Fill: 66 ------ FIFO VALUES: ------- -Mag [26.7920 s]: 4.32 -24.59 -7.45 -Gyr [26.7920 s]: -0.06 0.30 0.18 -Acc [26.7920 s]: 0.08 0.06 1.01 -Mag [26.7920 s]: 4.32 -24.59 -7.45 -Gyr [26.8020 s]: 0.00 0.30 0.06 -Acc [26.8020 s]: 0.08 0.06 1.01 -Mag [26.7920 s]: 4.32 -24.59 -7.45 -Gyr [26.8120 s]: 0.06 0.30 0.06 -Acc [26.8120 s]: 0.08 0.06 1.01 -Mag [26.7920 s]: 4.32 -24.59 -7.45 -Gyr [26.8220 s]: 0.00 0.30 0.00 -Acc [26.8220 s]: 0.07 0.06 1.01 -Mag [26.8320 s]: 4.32 -24.93 -7.45 -Gyr [26.8320 s]: -0.12 0.30 0.12 -Acc [26.8320 s]: 0.08 0.06 1.01 ------- CORRECTED AVERAGE VALUES: ------ -31.97> Number of accelerometer samples considered: 66 -31.97> Number of magnetometer samples considered: 17 -31.98> Number of gyroscope samples considered: 66 -Mag [31.9557 s]: 8.64 -50.44 -14.94 -Gyr [31.9557 s]: -0.12 0.59 0.18 -Acc [31.9557 s]: 0.15 0.12 2.02 diff --git a/scripts/vscodesetup.sh b/scripts/vscodesetup.sh new file mode 100755 index 0000000000000000000000000000000000000000..6b515971bef104982d79dc960fd3cd756ae265bb --- /dev/null +++ b/scripts/vscodesetup.sh @@ -0,0 +1,26 @@ +#!/bin/bash + +# Copyright (c) 2021 Skyward Experimental Rocketry +# Authors: Alberto Nidasio +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +# THE SOFTWARE. + +# Copies the directory ide/vscode to .vscode + +cp -r ide/vscode .vscode \ No newline at end of file diff --git a/src/boards/DeathStack/configs/HILConfig.h b/src/boards/DeathStack/configs/HILConfig.h index 9d84c3085ce9f9b52be963ac8b7155a675972690..829ae62021ff49487866f1ff03386b4915971270 100644 --- a/src/boards/DeathStack/configs/HILConfig.h +++ b/src/boards/DeathStack/configs/HILConfig.h @@ -1,5 +1,5 @@ /* Copyright (c) 2020 Skyward Experimental Rocketry - * Authors: Emilio Corigliano + * Author: Emilio Corigliano * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -13,7 +13,7 @@ * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN diff --git a/src/entrypoints/death-stack-x-decoder/LogTypes.h b/src/entrypoints/death-stack-x-decoder/LogTypes.h index 95e934188ac99328f9970edcb29427b8f7274116..5d0bf622d4e5d88429aa51179d2c48d49b0c2dae 100644 --- a/src/entrypoints/death-stack-x-decoder/LogTypes.h +++ b/src/entrypoints/death-stack-x-decoder/LogTypes.h @@ -1,5 +1,5 @@ /* Copyright (c) 2021 Skyward Experimental Rocketry - * Authors: Luca Erbetta + * Author: Luca Erbetta * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -13,7 +13,7 @@ * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN diff --git a/src/entrypoints/death-stack-x-decoder/death-stack-x-decoder.cpp b/src/entrypoints/death-stack-x-decoder/death-stack-x-decoder.cpp index 359eb7f2149ca3bfc66f1b76c0a24c99e9e0faf1..1d6889d00e7df536d1c038fa931857232de59665 100644 --- a/src/entrypoints/death-stack-x-decoder/death-stack-x-decoder.cpp +++ b/src/entrypoints/death-stack-x-decoder/death-stack-x-decoder.cpp @@ -1,2 +1,24 @@ +/* Copyright (c) 2019 Skyward Experimental Rocketry + * Author: Alberto Nidasio + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + #include "LogTypes.h" #include "logger/decoder/logdecoder.cpp" \ No newline at end of file