Skip to content

Commit

Permalink
Minor release of foxBMS 2 (v1.7.0)
Browse files Browse the repository at this point in the history
The installation process and the overall tooling has been simplified.
foxBMS 2 now ships with a new 'venv' environment named '2024-08-pale-fox'.
See INSTALLATION.md for information on updating the toolchain.

**The CAN message IDs and some internal definitions have been changed.**

* The defintion and layout of the CAN messages has been improved and required
  some changes.
  This is a incompatible change, i.e., control software needs to be adapted in
  order to correctly communicate with the BMS.
  See the changelog and documentation for details.
* Fixed several bugs in NXP MC33775A driver:
  - which was caused by a wrong stop condition when iterating over cell
    voltages in function 'N775_InitializeDatabase'.
  - which caused an out-of-bounce access when reading out the unique device ID
    in function 'N775_Enumerate'.
  - which caused the daisy-chain to be not initialized correctly in some cases.
    No measurement data could be read from the daisy-chain in these cases.
* Unit tests of the ADI ADES1830 AFE driver have been improved.
* Toolchain updates (see INSTALLATION.md on how to update):
  - The Python dependencies have been updated.
  - Ceedling has been updated to 1.0.0-ba45d2c.
  - The Ruby Gems required for ceedling have been updated.
  - The VS Code workspaces have been improved for a better developed
    experience.

For a detailed list of changes, please refer to the documentation at
https://iisb-foxbms.iisb.fraunhofer.de/foxbms/gen2/docs/html/v1.7.0/general/changelog.html.
  • Loading branch information
foxBMS committed Aug 8, 2024
1 parent 06d3878 commit 5d9cfba
Show file tree
Hide file tree
Showing 2,097 changed files with 91,461 additions and 149,098 deletions.
110 changes: 89 additions & 21 deletions .clang-format
Original file line number Diff line number Diff line change
@@ -1,22 +1,57 @@
---
Language: Cpp
# BasedOnStyle: LLVM
AccessModifierOffset: -2
AlignAfterOpenBracket: AlwaysBreak
AlignArrayOfStructures: None # clang-bug
AlignConsecutiveMacros: Consecutive
AlignConsecutiveAssignments: true
AlignConsecutiveBitFields: Consecutive
AlignConsecutiveDeclarations: false
AlignArrayOfStructures: None
AlignConsecutiveMacros:
Enabled: true
AcrossEmptyLines: false
AcrossComments: false
AlignCompound: false
AlignFunctionPointers: false
PadOperators: false
AlignConsecutiveAssignments:
Enabled: true
AcrossEmptyLines: false
AcrossComments: false
AlignCompound: false
AlignFunctionPointers: false
PadOperators: true
AlignConsecutiveBitFields:
Enabled: true
AcrossEmptyLines: false
AcrossComments: false
AlignCompound: false
AlignFunctionPointers: false
PadOperators: false
AlignConsecutiveDeclarations:
Enabled: false
AcrossEmptyLines: false
AcrossComments: false
AlignCompound: false
AlignFunctionPointers: false
PadOperators: false
AlignConsecutiveShortCaseStatements:
Enabled: false
AcrossEmptyLines: false
AcrossComments: false
AlignCaseColons: false
AlignEscapedNewlines: Left
AlignOperands: Align
AlignTrailingComments: true
AlignTrailingComments:
Kind: Always
OverEmptyLines: 0
AllowAllArgumentsOnNextLine: true
AllowAllConstructorInitializersOnNextLine: true
AllowAllParametersOfDeclarationOnNextLine: false
AllowBreakBeforeNoexceptSpecifier: Never
AllowShortBlocksOnASingleLine: false
AllowShortCaseLabelsOnASingleLine: false
AllowShortCompoundRequirementOnASingleLine: false
AllowShortEnumsOnASingleLine: false
AllowShortFunctionsOnASingleLine: InlineOnly
AllowShortLambdasOnASingleLine: All
AllowShortIfStatementsOnASingleLine: false
AllowShortIfStatementsOnASingleLine: Never
AllowShortLoopsOnASingleLine: false
AlwaysBreakAfterDefinitionReturnType: None
AlwaysBreakAfterReturnType: None
Expand Down Expand Up @@ -44,24 +79,24 @@ BraceWrapping:
SplitEmptyFunction: true
SplitEmptyRecord: true
SplitEmptyNamespace: true
BreakAdjacentStringLiterals: true
BreakAfterAttributes: Leave
BreakArrays: true
BreakBeforeBinaryOperators: None
BreakBeforeConceptDeclarations: true
BreakBeforeBraces: Attach
BreakBeforeInheritanceComma: false
BreakBeforeInlineASMColon: OnlyMultiline
BreakInheritanceList: BeforeColon
BreakBeforeTernaryOperators: true
BreakConstructorInitializersBeforeComma: false
BreakConstructorInitializers: BeforeColon
BreakAfterJavaFieldAnnotations: false
BreakStringLiterals: true
ColumnLimit: 120
CommentPragmas: "^ IWYU pragma:"
CompactNamespaces: false
ConstructorInitializerAllOnOneLineOrOnePerLine: false
ConstructorInitializerIndentWidth: 4
ContinuationIndentWidth: 4
Cpp11BracedListStyle: true
DeriveLineEnding: true
DerivePointerAlignment: false
DisableFormat: false
EmptyLineAfterAccessModifier: Never
Expand Down Expand Up @@ -107,43 +142,66 @@ IncludeIsMainSourceRegex: ""
IndentAccessModifiers: false
IndentCaseLabels: true
IndentCaseBlocks: false

IndentGotoLabels: true
IndentPPDirectives: None
IndentExternBlock: AfterExternBlock
IndentRequires: false
IndentRequiresClause: true
IndentWidth: 4
IndentWrappedFunctionNames: true
IndentWrappedFunctionNames: false
InsertBraces: false
InsertNewlineAtEOF: false
InsertTrailingCommas: None
IntegerLiteralSeparator:
Binary: 0
BinaryMinDigits: 0
Decimal: 0
DecimalMinDigits: 0
Hex: 0
HexMinDigits: 0
JavaScriptQuotes: Leave
JavaScriptWrapImports: true
KeepEmptyLinesAtTheStartOfBlocks: false
KeepEmptyLinesAtEOF: true
LambdaBodyIndentation: Signature
LineEnding: DeriveLF
MacroBlockBegin: ""
MacroBlockEnd: ""
MaxEmptyLinesToKeep: 1
NamespaceIndentation: None
ObjCBinPackProtocolList: Auto
ObjCBlockIndentWidth: 2
ObjCBlockIndentWidth: 4
ObjCBreakBeforeNestedBlockParam: true
ObjCSpaceAfterProperty: false
ObjCSpaceBeforeProtocolList: true
PackConstructorInitializers: BinPack
PenaltyBreakAssignment: 20
PenaltyBreakBeforeFirstCallParameter: 19
PenaltyBreakComment: 300
PenaltyBreakFirstLessLess: 120
PenaltyBreakOpenParenthesis: 0
PenaltyBreakScopeResolution: 500
PenaltyBreakString: 1000
PenaltyBreakTemplateDeclaration: 10
PenaltyExcessCharacter: 1000000
PenaltyReturnTypeOnItsOwnLine: 100000
PenaltyIndentedWhitespace: 0
PointerAlignment: Right
PPIndentWidth: -1
QualifierAlignment: Leave
ReferenceAlignment: Pointer
ReflowComments: false
RemoveBracesLLVM: false
RemoveParentheses: Leave
RemoveSemicolon: false
RequiresClausePosition: OwnLine
RequiresExpressionIndentation: OuterScope
SeparateDefinitionBlocks: Leave
ShortNamespaceLines: 1
SkipMacroDefinitionBody: false
SortIncludes: CaseSensitive
SortJavaStaticImport: Before
SortUsingDeclarations: true
SortUsingDeclarations: LexicographicNumeric
SpaceAfterCStyleCast: false
SpaceAfterLogicalNot: false
SpaceAfterTemplateKeyword: true
Expand All @@ -152,27 +210,37 @@ SpaceBeforeCaseColon: false
SpaceBeforeCpp11BracedList: false
SpaceBeforeCtorInitializerColon: true
SpaceBeforeInheritanceColon: true
SpaceBeforeJsonColon: false
SpaceBeforeParens: ControlStatements
SpaceAroundPointerQualifiers: Default
SpaceBeforeParensOptions:
AfterControlStatements: true
AfterForeachMacros: true
AfterFunctionDefinitionName: false
AfterFunctionDeclarationName: false
AfterIfMacros: true
AfterOverloadedOperator: false
AfterPlacementOperator: true
AfterRequiresInClause: false
AfterRequiresInExpression: false
BeforeNonEmptyParentheses: false
SpaceBeforeRangeBasedForLoopColon: true
SpaceInEmptyBlock: false
SpaceInEmptyParentheses: false
SpacesBeforeTrailingComments: 2
SpacesInAngles: Never
SpacesInConditionalStatement: false
SpacesInContainerLiterals: true
SpacesInCStyleCastParentheses: false
SpacesInLineCommentPrefix:
Minimum: 1
Maximum: -1
SpacesInParentheses: false
SpacesInParens: Never
SpacesInSquareBrackets: false
SpaceBeforeSquareBrackets: false
BitFieldColonSpacing: Both
Standard: Latest
StatementAttributeLikeMacros: []
StatementMacros: []
TabWidth: 4
UseCRLF: true
UseTab: Never
VerilogBreakBetweenInstancePorts: true
WhitespaceSensitiveMacros: []
---
7 changes: 7 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
Expand Up @@ -27,3 +27,10 @@ tests/axivion/qualification-test/qualification-kit/**/*.cpp -diff -merge -text
tests/axivion/qualification-test/qualification-kit/**/*.h -diff -merge -text
tests/axivion/qualification-test/qualification-kit/**/*.json -diff -merge -text
tests/axivion/qualification-test/qualification-kit/**/*.py -diff -merge -text

*.sln text eol=crlf

*.png binary
*.jpg binary

*.sh text eol=lf
2 changes: 1 addition & 1 deletion .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,5 +27,5 @@ system or similar that would allow us to integrate input from GitHub Pull
Requests, therefore GitHub Pull Requests are currently not accepted.

We would be very pleased if you intend to contribute to this project. Please
contact us first at [email protected] in order to discuss your contribution and
contact us first at <[email protected]> in order to discuss your contribution and
how it can be applied to the project.
26 changes: 26 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
/.vscode/
/src/.vscode/
/tests/unit/.vscode/
/build/
/build-tools-tests/
/*build/
Expand All @@ -7,17 +9,26 @@
/conf/hcg/source/*
/conf/hcg/*_bak.dil
/conf/hcg/*_bak.hcg
/tmp/*

*/tmp/*
*c4che*
/foxbms*/
tools/*waf3-*/
tools/waf-sig*
tools/utils/waf-sig*
.lock-waf*
.wafpickle-*
*.bz2
*.gz
*.zip
*.7z
*.stats
*.html

#
libbuild/
lib-build/

# spelling
dictionary.dic
Expand Down Expand Up @@ -53,10 +64,14 @@ __pycache__

*.~*
*.~$*
~$*

**/foxbms-2_axivion_report*.json
**/foxbms_spa_report*.json
spa-artifacts/

*.o
*.obj
*.exe

/races.txt
Expand All @@ -65,3 +80,14 @@ spa-artifacts/
*.asc

*.tmp

# coverage files
.coverage
htmlcov/

*.mk
*.rsp
*.dmr
*.tmw
buildInfo.*
codeInfo.*
Loading

0 comments on commit 5d9cfba

Please sign in to comment.