# Notes A dumping ground of notes and ideas ## cpp_settings.json ``` { "configurations": [ { "name": "Linux", "includePath": [ "/home/USER/.arduino15/packages/arduino/tools/**", "/home/USER/.arduino15/packages/arduino/hardware/samd/1.8.7/**", "/usr/local/share/arduino/libraries/**", "/usr/local/share/arduino/hardware/**", "/home/USER/Arduino/libraries/**", "${workspaceFolder}/**" ], "forcedInclude": [ "/home/USER/.arduino15/packages/arduino/hardware/samd/1.8.7/cores/arduino/Arduino.h" ], "intelliSenseMode": "clang-x64", "compilerPath": "/usr/bin/clang", "cStandard": "c11", "cppStandard": "gnu++14" } ], "version": 4 } ``` ## clang formatter ``` BasedOnStyle: LLVM Language: Cpp AlignAfterOpenBracket: Align AlignConsecutiveAssignments: true AlignConsecutiveDeclarations: true AlignConsecutiveMacros: true AlignEscapedNewlines: Left # AlignOperands: AlignAfterOperator AlignOperands: true AlignTrailingComments: true AllowAllArgumentsOnNextLine: false AllowAllParametersOfDeclarationOnNextLine: false AllowAllConstructorInitializersOnNextLine: false AllowShortBlocksOnASingleLine: true AllowShortCaseLabelsOnASingleLine: true AllowShortFunctionsOnASingleLine: true AllowShortIfStatementsOnASingleLine: true AllowShortLoopsOnASingleLine: false BreakBeforeBraces: Attach BreakStringLiterals: true IncludeBlocks: Regroup #IndentCaseBlocks: true IndentCaseLabels: true KeepEmptyLinesAtTheStartOfBlocks: false PointerAlignment: Right ReflowComments: true SpaceBeforeAssignmentOperators: true SpaceBeforeParens: ControlStatements SpaceBeforeSquareBrackets: false UseTab: ForContinuationAndIndentation IndentWidth: 4 TabWidth: 4 BinPackArguments: false BinPackParameters: false ``` ## Makefile ``` compile=arduino-cli compile --log-level=warn -v upload=arduino-cli upload serial := $(shell arduino-cli board list | grep mkrwifi1010 | awk '{print $$1}') all: cd ../ && $(compile) --fqbn arduino:samd:mkrwifi1010 PROJECT upload: cd ../ && $(upload) --fqbn arduino:samd:mkrwifi1010 -p ${mkr1010_serial} PROJECT monitor: screen ${mkr1010} 9600 ```