-
-
Notifications
You must be signed in to change notification settings - Fork 0
Comment Finite State Machine & Logical Control Loop #136
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Draft
ManasijaBhargavan
wants to merge
68
commits into
main
Choose a base branch
from
StateMachine
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Co-authored-by: ManasijaBhargavan <ManasijaBhargavan@users.noreply.github.com>
…ar that we can build off of
# State Machine Incorrect BSE/APPS Violation ## Problem and Scope > is this the final state machine or just for example purposes? > > An APPS/BSE Violation should not reset the state to precharge complete as that would require re-pressing RTD to engage the motor. > > During EV active tech, we are required to press the brake and throttle, show that the motor cuts power, and then the throttle by itself to show the motor spins immediately after with no faults. ## Description Removes the BSE / APPS Violation arrow from the state machine mermaid. ## Gotchas and Limitations Integral part of drive active to verify the proper behavior still ## Testing - [ ] HOOTL testing - [ ] HITL testing - [x] Human tested ### Testing Details Renders correctly <img width="624" height="735" alt="image" src="https://github.com/user-attachments/assets/c1f5808d-4be9-4610-ad26-56d12de85477" /> ## Larger Impact Part of a larger effort to implement the ECU ## Additional Context and Ticket Resolves #98
# Light Mode State Machine Diagram ## Problem and Scope State machine diagram in light mode has the white arrows between states disappear, making it functionally useless ## Description Change the way the mermaid is generated by making the colors off of the default background ## Gotchas and Limitations May be difficult for automatic screen readers, but not sure how that is supposed to work ## Testing - [ ] HOOTL testing - [ ] HITL testing - [x] Human tested ### Testing Details <details> <summary>Light default</summary> <img width="631" height="745" alt="image" src="https://github.com/user-attachments/assets/0c49d340-3bca-4949-9280-a36845745746" /> </details> <details> <summary>Light colorblind</summary> <img width="631" height="745" alt="image" src="https://github.com/user-attachments/assets/87a769d9-1f55-424f-82f6-03372bdc1e24" /> </details> <details> <summary>Light tritanopia</summary> <img width="631" height="745" alt="image" src="https://github.com/user-attachments/assets/73718998-49b5-4154-a941-da3605815bb5" /> </details> <details> <summary>Dark default</summary> <img width="631" height="745" alt="image" src="https://github.com/user-attachments/assets/f75fe431-a542-413e-b8f7-4f9379d4a152" /> </details> <details> <summary>Dark colorblind</summary> <img width="631" height="745" alt="image" src="https://github.com/user-attachments/assets/7a791f5b-2f66-4f9d-b841-9f61baffe3ed" /> </details> <details> <summary>Dark tritanopia</summary> <img width="631" height="745" alt="image" src="https://github.com/user-attachments/assets/7fd9ea3c-a307-471b-9e90-8eec3ca765c3" /> </details> <details> <summary>Soft dark</summary> <img width="631" height="745" alt="image" src="https://github.com/user-attachments/assets/458b43d4-9d97-47fa-bee9-aa659836d5bf" /> </details> ## Larger Impact Readability ## Additional Context and Ticket Resolves #99
# G4 Peripheral Testing Project ## Problem and Scope We will eventually have to test all of our peripheral abstractions on a board, yet not all existing projects have a board configured with the correct peripherals. This could potentially slow down the testing process for peripheral abstraction, as what may end up happening is that separate groups spend time on CubeMX simply trying to configure a board to be able to test their own peripheral. ## Description G4PERTESTING is a new project for a STM32G4 that has support for SPI, CAN, TIM, GPIO, DMA (only for ADC), I2C, USART (more like UART actually), and ADC. The exact pins should be listed in G4 Peripheral Testing under Misc Resources in the Gaucho Racing Wiki, or you can just open the .ioc file that should be included with the project folder. ## Gotchas and Limitations As hinted above, the peripheral configurations aren't exactly perfect. USART only has support for asynchronous communication (which is just UART) and DMA isn't configured for all of the peripherals. In the future, we may have to boot up CubeMX again and properly configure those peripherals, but for the most part everything else should have sufficient support. Shoot me if they don't though. ## Testing - [X] CMake Builds - [x] HOOTL testing ### Testing Details Without the actual peripheral abstractions to work with, there's nothing really to test other than making sure you can actually get it to debug properly (which it does). ## Larger Impact Hopefully this makes peripheral testing a lot easier in the oncoming weeks when they start being ready to test. ## Additional Context and Ticket --------- Signed-off-by: Bailey Say <baileyasay@gmail.com> Co-authored-by: Daniel Hansen <dchansen06@gmail.com> Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Daniel Hansen <105574022+dchansen06@users.noreply.github.com>
# Dependabot ## Problem and Scope GitHub Actions get updated by 3rd parties, and it is important to keep them up to date ## Description Enable dependabot which will automatically open PRs for out of date action workflows ## Gotchas and Limitations Does not update anything else ## Testing - [x] Human tested ### Testing Details Requires waiting until Monday 7pm, but must be on the `main` branch ## Larger Impact None ## Additional Context and Ticket Should be helpful
# Forked Format Feature ## Problem and Scope 091547b failed since the secret was not available on a fork on the format actions even though no formatting was needed ## Description Add a fallback to the default GitHub token if the secret is not available ## Gotchas and Limitations Auto format tools will fail to apply a commit if running without the secret and a format is needed ## Testing - [x] HOOTL testing - [ ] HITL testing - [x] Human tested ### Testing Details Testing on #105 ## Larger Impact None ## Additional Context and Ticket Helps #105 after #104
Bumps the actions-updates group with 4 updates: [actions/checkout](https://github.com/actions/checkout), [actions/setup-python](https://github.com/actions/setup-python), [actions/upload-artifact](https://github.com/actions/upload-artifact) and [awalsh128/cache-apt-pkgs-action](https://github.com/awalsh128/cache-apt-pkgs-action). Updates `actions/checkout` from 4 to 5 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/actions/checkout/releases">actions/checkout's releases</a>.</em></p> <blockquote> <h2>v5.0.0</h2> <h2>What's Changed</h2> <ul> <li>Update actions checkout to use node 24 by <a href="https://github.com/salmanmkc"><code>@salmanmkc</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/2226">actions/checkout#2226</a></li> <li>Prepare v5.0.0 release by <a href="https://github.com/salmanmkc"><code>@salmanmkc</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/2238">actions/checkout#2238</a></li> </ul> <h2>⚠️ Minimum Compatible Runner Version</h2> <p><strong>v2.327.1</strong><br /> <a href="https://github.com/actions/runner/releases/tag/v2.327.1">Release Notes</a></p> <p>Make sure your runner is updated to this version or newer to use this release.</p> <p><strong>Full Changelog</strong>: <a href="https://github.com/actions/checkout/compare/v4...v5.0.0">https://github.com/actions/checkout/compare/v4...v5.0.0</a></p> <h2>v4.3.0</h2> <h2>What's Changed</h2> <ul> <li>docs: update README.md by <a href="https://github.com/motss"><code>@motss</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1971">actions/checkout#1971</a></li> <li>Add internal repos for checking out multiple repositories by <a href="https://github.com/mouismail"><code>@mouismail</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1977">actions/checkout#1977</a></li> <li>Documentation update - add recommended permissions to Readme by <a href="https://github.com/benwells"><code>@benwells</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/2043">actions/checkout#2043</a></li> <li>Adjust positioning of user email note and permissions heading by <a href="https://github.com/joshmgross"><code>@joshmgross</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/2044">actions/checkout#2044</a></li> <li>Update README.md by <a href="https://github.com/nebuk89"><code>@nebuk89</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/2194">actions/checkout#2194</a></li> <li>Update CODEOWNERS for actions by <a href="https://github.com/TingluoHuang"><code>@TingluoHuang</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/2224">actions/checkout#2224</a></li> <li>Update package dependencies by <a href="https://github.com/salmanmkc"><code>@salmanmkc</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/2236">actions/checkout#2236</a></li> <li>Prepare release v4.3.0 by <a href="https://github.com/salmanmkc"><code>@salmanmkc</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/2237">actions/checkout#2237</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/motss"><code>@motss</code></a> made their first contribution in <a href="https://redirect.github.com/actions/checkout/pull/1971">actions/checkout#1971</a></li> <li><a href="https://github.com/mouismail"><code>@mouismail</code></a> made their first contribution in <a href="https://redirect.github.com/actions/checkout/pull/1977">actions/checkout#1977</a></li> <li><a href="https://github.com/benwells"><code>@benwells</code></a> made their first contribution in <a href="https://redirect.github.com/actions/checkout/pull/2043">actions/checkout#2043</a></li> <li><a href="https://github.com/nebuk89"><code>@nebuk89</code></a> made their first contribution in <a href="https://redirect.github.com/actions/checkout/pull/2194">actions/checkout#2194</a></li> <li><a href="https://github.com/salmanmkc"><code>@salmanmkc</code></a> made their first contribution in <a href="https://redirect.github.com/actions/checkout/pull/2236">actions/checkout#2236</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/actions/checkout/compare/v4...v4.3.0">https://github.com/actions/checkout/compare/v4...v4.3.0</a></p> <h2>v4.2.2</h2> <h2>What's Changed</h2> <ul> <li><code>url-helper.ts</code> now leverages well-known environment variables by <a href="https://github.com/jww3"><code>@jww3</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1941">actions/checkout#1941</a></li> <li>Expand unit test coverage for <code>isGhes</code> by <a href="https://github.com/jww3"><code>@jww3</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1946">actions/checkout#1946</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/actions/checkout/compare/v4.2.1...v4.2.2">https://github.com/actions/checkout/compare/v4.2.1...v4.2.2</a></p> <h2>v4.2.1</h2> <h2>What's Changed</h2> <ul> <li>Check out other refs/* by commit if provided, fall back to ref by <a href="https://github.com/orhantoy"><code>@orhantoy</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1924">actions/checkout#1924</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/Jcambass"><code>@Jcambass</code></a> made their first contribution in <a href="https://redirect.github.com/actions/checkout/pull/1919">actions/checkout#1919</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/actions/checkout/compare/v4.2.0...v4.2.1">https://github.com/actions/checkout/compare/v4.2.0...v4.2.1</a></p> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/actions/checkout/blob/main/CHANGELOG.md">actions/checkout's changelog</a>.</em></p> <blockquote> <h1>Changelog</h1> <h2>V5.0.0</h2> <ul> <li>Update actions checkout to use node 24 by <a href="https://github.com/salmanmkc"><code>@salmanmkc</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/2226">actions/checkout#2226</a></li> </ul> <h2>V4.3.0</h2> <ul> <li>docs: update README.md by <a href="https://github.com/motss"><code>@motss</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1971">actions/checkout#1971</a></li> <li>Add internal repos for checking out multiple repositories by <a href="https://github.com/mouismail"><code>@mouismail</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1977">actions/checkout#1977</a></li> <li>Documentation update - add recommended permissions to Readme by <a href="https://github.com/benwells"><code>@benwells</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/2043">actions/checkout#2043</a></li> <li>Adjust positioning of user email note and permissions heading by <a href="https://github.com/joshmgross"><code>@joshmgross</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/2044">actions/checkout#2044</a></li> <li>Update README.md by <a href="https://github.com/nebuk89"><code>@nebuk89</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/2194">actions/checkout#2194</a></li> <li>Update CODEOWNERS for actions by <a href="https://github.com/TingluoHuang"><code>@TingluoHuang</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/2224">actions/checkout#2224</a></li> <li>Update package dependencies by <a href="https://github.com/salmanmkc"><code>@salmanmkc</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/2236">actions/checkout#2236</a></li> </ul> <h2>v4.2.2</h2> <ul> <li><code>url-helper.ts</code> now leverages well-known environment variables by <a href="https://github.com/jww3"><code>@jww3</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1941">actions/checkout#1941</a></li> <li>Expand unit test coverage for <code>isGhes</code> by <a href="https://github.com/jww3"><code>@jww3</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1946">actions/checkout#1946</a></li> </ul> <h2>v4.2.1</h2> <ul> <li>Check out other refs/* by commit if provided, fall back to ref by <a href="https://github.com/orhantoy"><code>@orhantoy</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1924">actions/checkout#1924</a></li> </ul> <h2>v4.2.0</h2> <ul> <li>Add Ref and Commit outputs by <a href="https://github.com/lucacome"><code>@lucacome</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1180">actions/checkout#1180</a></li> <li>Dependency updates by <a href="https://github.com/dependabot"><code>@dependabot</code></a>- <a href="https://redirect.github.com/actions/checkout/pull/1777">actions/checkout#1777</a>, <a href="https://redirect.github.com/actions/checkout/pull/1872">actions/checkout#1872</a></li> </ul> <h2>v4.1.7</h2> <ul> <li>Bump the minor-npm-dependencies group across 1 directory with 4 updates by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1739">actions/checkout#1739</a></li> <li>Bump actions/checkout from 3 to 4 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1697">actions/checkout#1697</a></li> <li>Check out other refs/* by commit by <a href="https://github.com/orhantoy"><code>@orhantoy</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1774">actions/checkout#1774</a></li> <li>Pin actions/checkout's own workflows to a known, good, stable version. by <a href="https://github.com/jww3"><code>@jww3</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1776">actions/checkout#1776</a></li> </ul> <h2>v4.1.6</h2> <ul> <li>Check platform to set archive extension appropriately by <a href="https://github.com/cory-miller"><code>@cory-miller</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1732">actions/checkout#1732</a></li> </ul> <h2>v4.1.5</h2> <ul> <li>Update NPM dependencies by <a href="https://github.com/cory-miller"><code>@cory-miller</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1703">actions/checkout#1703</a></li> <li>Bump github/codeql-action from 2 to 3 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1694">actions/checkout#1694</a></li> <li>Bump actions/setup-node from 1 to 4 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1696">actions/checkout#1696</a></li> <li>Bump actions/upload-artifact from 2 to 4 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1695">actions/checkout#1695</a></li> <li>README: Suggest <code>user.email</code> to be <code>41898282+github-actions[bot]@users.noreply.github.com</code> by <a href="https://github.com/cory-miller"><code>@cory-miller</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1707">actions/checkout#1707</a></li> </ul> <h2>v4.1.4</h2> <ul> <li>Disable <code>extensions.worktreeConfig</code> when disabling <code>sparse-checkout</code> by <a href="https://github.com/jww3"><code>@jww3</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1692">actions/checkout#1692</a></li> <li>Add dependabot config by <a href="https://github.com/cory-miller"><code>@cory-miller</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1688">actions/checkout#1688</a></li> <li>Bump the minor-actions-dependencies group with 2 updates by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1693">actions/checkout#1693</a></li> <li>Bump word-wrap from 1.2.3 to 1.2.5 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1643">actions/checkout#1643</a></li> </ul> <h2>v4.1.3</h2> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/actions/checkout/commit/08c6903cd8c0fde910a37f88322edcfb5dd907a8"><code>08c6903</code></a> Prepare v5.0.0 release (<a href="https://redirect.github.com/actions/checkout/issues/2238">#2238</a>)</li> <li><a href="https://github.com/actions/checkout/commit/9f265659d3bb64ab1440b03b12f4d47a24320917"><code>9f26565</code></a> Update actions checkout to use node 24 (<a href="https://redirect.github.com/actions/checkout/issues/2226">#2226</a>)</li> <li>See full diff in <a href="https://github.com/actions/checkout/compare/v4...v5">compare view</a></li> </ul> </details> <br /> Updates `actions/setup-python` from 4 to 6 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/actions/setup-python/releases">actions/setup-python's releases</a>.</em></p> <blockquote> <h2>v6.0.0</h2> <h2>What's Changed</h2> <h3>Breaking Changes</h3> <ul> <li>Upgrade to node 24 by <a href="https://github.com/salmanmkc"><code>@salmanmkc</code></a> in <a href="https://redirect.github.com/actions/setup-python/pull/1164">actions/setup-python#1164</a></li> </ul> <p>Make sure your runner is on version v2.327.1 or later to ensure compatibility with this release. <a href="https://github.com/actions/runner/releases/tag/v2.327.1">See Release Notes</a></p> <h3>Enhancements:</h3> <ul> <li>Add support for <code>pip-version</code> by <a href="https://github.com/priyagupta108"><code>@priyagupta108</code></a> in <a href="https://redirect.github.com/actions/setup-python/pull/1129">actions/setup-python#1129</a></li> <li>Enhance reading from .python-version by <a href="https://github.com/krystof-k"><code>@krystof-k</code></a> in <a href="https://redirect.github.com/actions/setup-python/pull/787">actions/setup-python#787</a></li> <li>Add version parsing from Pipfile by <a href="https://github.com/aradkdj"><code>@aradkdj</code></a> in <a href="https://redirect.github.com/actions/setup-python/pull/1067">actions/setup-python#1067</a></li> </ul> <h3>Bug fixes:</h3> <ul> <li>Clarify pythonLocation behaviour for PyPy and GraalPy in environment variables by <a href="https://github.com/aparnajyothi-y"><code>@aparnajyothi-y</code></a> in <a href="https://redirect.github.com/actions/setup-python/pull/1183">actions/setup-python#1183</a></li> <li>Change missing cache directory error to warning by <a href="https://github.com/aparnajyothi-y"><code>@aparnajyothi-y</code></a> in <a href="https://redirect.github.com/actions/setup-python/pull/1182">actions/setup-python#1182</a></li> <li>Add Architecture-Specific PATH Management for Python with --user Flag on Windows by <a href="https://github.com/aparnajyothi-y"><code>@aparnajyothi-y</code></a> in <a href="https://redirect.github.com/actions/setup-python/pull/1122">actions/setup-python#1122</a></li> <li>Include python version in PyPy python-version output by <a href="https://github.com/cdce8p"><code>@cdce8p</code></a> in <a href="https://redirect.github.com/actions/setup-python/pull/1110">actions/setup-python#1110</a></li> <li>Update docs: clarification on pip authentication with setup-python by <a href="https://github.com/priya-kinthali"><code>@priya-kinthali</code></a> in <a href="https://redirect.github.com/actions/setup-python/pull/1156">actions/setup-python#1156</a></li> </ul> <h3>Dependency updates:</h3> <ul> <li>Upgrade idna from 2.9 to 3.7 in /<strong>tests</strong>/data by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/actions/setup-python/pull/843">actions/setup-python#843</a></li> <li>Upgrade form-data to fix critical vulnerabilities <a href="https://redirect.github.com/actions/setup-python/issues/182">#182</a> & <a href="https://redirect.github.com/actions/setup-python/issues/183">#183</a> by <a href="https://github.com/aparnajyothi-y"><code>@aparnajyothi-y</code></a> in <a href="https://redirect.github.com/actions/setup-python/pull/1163">actions/setup-python#1163</a></li> <li>Upgrade setuptools to 78.1.1 to fix path traversal vulnerability in PackageIndex.download by <a href="https://github.com/aparnajyothi-y"><code>@aparnajyothi-y</code></a> in <a href="https://redirect.github.com/actions/setup-python/pull/1165">actions/setup-python#1165</a></li> <li>Upgrade actions/checkout from 4 to 5 by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/actions/setup-python/pull/1181">actions/setup-python#1181</a></li> <li>Upgrade <code>@actions/tool-cache</code> from 2.0.1 to 2.0.2 by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/actions/setup-python/pull/1095">actions/setup-python#1095</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/krystof-k"><code>@krystof-k</code></a> made their first contribution in <a href="https://redirect.github.com/actions/setup-python/pull/787">actions/setup-python#787</a></li> <li><a href="https://github.com/cdce8p"><code>@cdce8p</code></a> made their first contribution in <a href="https://redirect.github.com/actions/setup-python/pull/1110">actions/setup-python#1110</a></li> <li><a href="https://github.com/aradkdj"><code>@aradkdj</code></a> made their first contribution in <a href="https://redirect.github.com/actions/setup-python/pull/1067">actions/setup-python#1067</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/actions/setup-python/compare/v5...v6.0.0">https://github.com/actions/setup-python/compare/v5...v6.0.0</a></p> <h2>v5.6.0</h2> <h2>What's Changed</h2> <ul> <li>Workflow updates related to Ubuntu 20.04 by <a href="https://github.com/aparnajyothi-y"><code>@aparnajyothi-y</code></a> in <a href="https://redirect.github.com/actions/setup-python/pull/1065">actions/setup-python#1065</a></li> <li>Fix for Candidate Not Iterable Error by <a href="https://github.com/aparnajyothi-y"><code>@aparnajyothi-y</code></a> in <a href="https://redirect.github.com/actions/setup-python/pull/1082">actions/setup-python#1082</a></li> <li>Upgrade semver and <code>@types/semver</code> by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/actions/setup-python/pull/1091">actions/setup-python#1091</a></li> <li>Upgrade prettier from 2.8.8 to 3.5.3 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/actions/setup-python/pull/1046">actions/setup-python#1046</a></li> <li>Upgrade ts-jest from 29.1.2 to 29.3.2 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/actions/setup-python/pull/1081">actions/setup-python#1081</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/actions/setup-python/compare/v5...v5.6.0">https://github.com/actions/setup-python/compare/v5...v5.6.0</a></p> <h2>v5.5.0</h2> <h2>What's Changed</h2> <h3>Enhancements:</h3> <ul> <li>Support free threaded Python versions like '3.13t' by <a href="https://github.com/colesbury"><code>@colesbury</code></a> in <a href="https://redirect.github.com/actions/setup-python/pull/973">actions/setup-python#973</a></li> <li>Enhance Workflows: Include ubuntu-arm runners, Add e2e Testing for free threaded and Upgrade <code>@action/cache</code> from 4.0.0 to 4.0.3 by <a href="https://github.com/priya-kinthali"><code>@priya-kinthali</code></a> in <a href="https://redirect.github.com/actions/setup-python/pull/1056">actions/setup-python#1056</a></li> <li>Add support for .tool-versions file in setup-python by <a href="https://github.com/mahabaleshwars"><code>@mahabaleshwars</code></a> in <a href="https://redirect.github.com/actions/setup-python/pull/1043">actions/setup-python#1043</a></li> </ul> <h3>Bug fixes:</h3> <ul> <li>Fix architecture for pypy on Linux ARM64 by <a href="https://github.com/mayeut"><code>@mayeut</code></a> in <a href="https://redirect.github.com/actions/setup-python/pull/1011">actions/setup-python#1011</a> This update maps arm64 to aarch64 for Linux ARM64 PyPy installations.</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/actions/setup-python/commit/e797f83bcb11b83ae66e0230d6156d7c80228e7c"><code>e797f83</code></a> Upgrade to node 24 (<a href="https://redirect.github.com/actions/setup-python/issues/1164">#1164</a>)</li> <li><a href="https://github.com/actions/setup-python/commit/3d1e2d2ca0a067f27da6fec484fce7f5256def85"><code>3d1e2d2</code></a> Revert "Enhance cache-dependency-path handling to support files outside the w...</li> <li><a href="https://github.com/actions/setup-python/commit/65b071217a8539818fdb8b54561bcbae40380a54"><code>65b0712</code></a> Clarify pythonLocation behavior for PyPy and GraalPy in environment variables...</li> <li><a href="https://github.com/actions/setup-python/commit/5b668cf7652160527499ee14ceaff4be9306cb88"><code>5b668cf</code></a> Bump actions/checkout from 4 to 5 (<a href="https://redirect.github.com/actions/setup-python/issues/1181">#1181</a>)</li> <li><a href="https://github.com/actions/setup-python/commit/f62a0e252fe7114e86949abfa6e1e89f85bb38c2"><code>f62a0e2</code></a> Change missing cache directory error to warning (<a href="https://redirect.github.com/actions/setup-python/issues/1182">#1182</a>)</li> <li><a href="https://github.com/actions/setup-python/commit/9322b3ca74000aeb2c01eb777b646334015ddd72"><code>9322b3c</code></a> Upgrade setuptools to 78.1.1 to fix path traversal vulnerability in PackageIn...</li> <li><a href="https://github.com/actions/setup-python/commit/fbeb884f69f0ac1c0257302f62aa524c2824b649"><code>fbeb884</code></a> Bump form-data to fix critical vulnerabilities <a href="https://redirect.github.com/actions/setup-python/issues/182">#182</a> & <a href="https://redirect.github.com/actions/setup-python/issues/183">#183</a> (<a href="https://redirect.github.com/actions/setup-python/issues/1163">#1163</a>)</li> <li><a href="https://github.com/actions/setup-python/commit/03bb6152f4f691b9d64579a1bd791904a083c452"><code>03bb615</code></a> Bump idna from 2.9 to 3.7 in /<strong>tests</strong>/data (<a href="https://redirect.github.com/actions/setup-python/issues/843">#843</a>)</li> <li><a href="https://github.com/actions/setup-python/commit/36da51d563b70a972897150555bb025096d65565"><code>36da51d</code></a> Add version parsing from Pipfile (<a href="https://redirect.github.com/actions/setup-python/issues/1067">#1067</a>)</li> <li><a href="https://github.com/actions/setup-python/commit/3c6f142cc0036d53007e92fa1e327564a4cfb7aa"><code>3c6f142</code></a> update documentation (<a href="https://redirect.github.com/actions/setup-python/issues/1156">#1156</a>)</li> <li>Additional commits viewable in <a href="https://github.com/actions/setup-python/compare/v4...v6">compare view</a></li> </ul> </details> <br /> Updates `actions/upload-artifact` from 4 to 5 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/actions/upload-artifact/releases">actions/upload-artifact's releases</a>.</em></p> <blockquote> <h2>v5.0.0</h2> <h2>What's Changed</h2> <p><strong>BREAKING CHANGE:</strong> this update supports Node <code>v24.x</code>. This is not a breaking change per-se but we're treating it as such.</p> <ul> <li>Update README.md by <a href="https://github.com/GhadimiR"><code>@GhadimiR</code></a> in <a href="https://redirect.github.com/actions/upload-artifact/pull/681">actions/upload-artifact#681</a></li> <li>Update README.md by <a href="https://github.com/nebuk89"><code>@nebuk89</code></a> in <a href="https://redirect.github.com/actions/upload-artifact/pull/712">actions/upload-artifact#712</a></li> <li>Readme: spell out the first use of GHES by <a href="https://github.com/danwkennedy"><code>@danwkennedy</code></a> in <a href="https://redirect.github.com/actions/upload-artifact/pull/727">actions/upload-artifact#727</a></li> <li>Update GHES guidance to include reference to Node 20 version by <a href="https://github.com/patrikpolyak"><code>@patrikpolyak</code></a> in <a href="https://redirect.github.com/actions/upload-artifact/pull/725">actions/upload-artifact#725</a></li> <li>Bump <code>@actions/artifact</code> to <code>v4.0.0</code></li> <li>Prepare <code>v5.0.0</code> by <a href="https://github.com/danwkennedy"><code>@danwkennedy</code></a> in <a href="https://redirect.github.com/actions/upload-artifact/pull/734">actions/upload-artifact#734</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/GhadimiR"><code>@GhadimiR</code></a> made their first contribution in <a href="https://redirect.github.com/actions/upload-artifact/pull/681">actions/upload-artifact#681</a></li> <li><a href="https://github.com/nebuk89"><code>@nebuk89</code></a> made their first contribution in <a href="https://redirect.github.com/actions/upload-artifact/pull/712">actions/upload-artifact#712</a></li> <li><a href="https://github.com/danwkennedy"><code>@danwkennedy</code></a> made their first contribution in <a href="https://redirect.github.com/actions/upload-artifact/pull/727">actions/upload-artifact#727</a></li> <li><a href="https://github.com/patrikpolyak"><code>@patrikpolyak</code></a> made their first contribution in <a href="https://redirect.github.com/actions/upload-artifact/pull/725">actions/upload-artifact#725</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/actions/upload-artifact/compare/v4...v5.0.0">https://github.com/actions/upload-artifact/compare/v4...v5.0.0</a></p> <h2>v4.6.2</h2> <h2>What's Changed</h2> <ul> <li>Update to use artifact 2.3.2 package & prepare for new upload-artifact release by <a href="https://github.com/salmanmkc"><code>@salmanmkc</code></a> in <a href="https://redirect.github.com/actions/upload-artifact/pull/685">actions/upload-artifact#685</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/salmanmkc"><code>@salmanmkc</code></a> made their first contribution in <a href="https://redirect.github.com/actions/upload-artifact/pull/685">actions/upload-artifact#685</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/actions/upload-artifact/compare/v4...v4.6.2">https://github.com/actions/upload-artifact/compare/v4...v4.6.2</a></p> <h2>v4.6.1</h2> <h2>What's Changed</h2> <ul> <li>Update to use artifact 2.2.2 package by <a href="https://github.com/yacaovsnc"><code>@yacaovsnc</code></a> in <a href="https://redirect.github.com/actions/upload-artifact/pull/673">actions/upload-artifact#673</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/actions/upload-artifact/compare/v4...v4.6.1">https://github.com/actions/upload-artifact/compare/v4...v4.6.1</a></p> <h2>v4.6.0</h2> <h2>What's Changed</h2> <ul> <li>Expose env vars to control concurrency and timeout by <a href="https://github.com/yacaovsnc"><code>@yacaovsnc</code></a> in <a href="https://redirect.github.com/actions/upload-artifact/pull/662">actions/upload-artifact#662</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/actions/upload-artifact/compare/v4...v4.6.0">https://github.com/actions/upload-artifact/compare/v4...v4.6.0</a></p> <h2>v4.5.0</h2> <h2>What's Changed</h2> <ul> <li>fix: deprecated <code>Node.js</code> version in action by <a href="https://github.com/hamirmahal"><code>@hamirmahal</code></a> in <a href="https://redirect.github.com/actions/upload-artifact/pull/578">actions/upload-artifact#578</a></li> <li>Add new <code>artifact-digest</code> output by <a href="https://github.com/bdehamer"><code>@bdehamer</code></a> in <a href="https://redirect.github.com/actions/upload-artifact/pull/656">actions/upload-artifact#656</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/hamirmahal"><code>@hamirmahal</code></a> made their first contribution in <a href="https://redirect.github.com/actions/upload-artifact/pull/578">actions/upload-artifact#578</a></li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/actions/upload-artifact/commit/330a01c490aca151604b8cf639adc76d48f6c5d4"><code>330a01c</code></a> Merge pull request <a href="https://redirect.github.com/actions/upload-artifact/issues/734">#734</a> from actions/danwkennedy/prepare-5.0.0</li> <li><a href="https://github.com/actions/upload-artifact/commit/03f282445299bbefc96171af272a984663b63a26"><code>03f2824</code></a> Update <code>github.dep.yml</code></li> <li><a href="https://github.com/actions/upload-artifact/commit/905a1ecb5915b264cbc519e4eb415b5d82916018"><code>905a1ec</code></a> Prepare <code>v5.0.0</code></li> <li><a href="https://github.com/actions/upload-artifact/commit/2d9f9cdfa99fedaddba68e9b5b5c281eca26cc63"><code>2d9f9cd</code></a> Merge pull request <a href="https://redirect.github.com/actions/upload-artifact/issues/725">#725</a> from patrikpolyak/patch-1</li> <li><a href="https://github.com/actions/upload-artifact/commit/9687587dec67f2a8bc69104e183d311c42af6d6f"><code>9687587</code></a> Merge branch 'main' into patch-1</li> <li><a href="https://github.com/actions/upload-artifact/commit/2848b2cda0e5190984587ec6bb1f36730ca78d50"><code>2848b2c</code></a> Merge pull request <a href="https://redirect.github.com/actions/upload-artifact/issues/727">#727</a> from danwkennedy/patch-1</li> <li><a href="https://github.com/actions/upload-artifact/commit/9b511775fd9ce8c5710b38eea671f856de0e70a7"><code>9b51177</code></a> Spell out the first use of GHES</li> <li><a href="https://github.com/actions/upload-artifact/commit/cd231ca1eda77976a84805c4194a1954f56b0727"><code>cd231ca</code></a> Update GHES guidance to include reference to Node 20 version</li> <li><a href="https://github.com/actions/upload-artifact/commit/de65e23aa2b7e23d713bb51fbfcb6d502f8667d8"><code>de65e23</code></a> Merge pull request <a href="https://redirect.github.com/actions/upload-artifact/issues/712">#712</a> from actions/nebuk89-patch-1</li> <li><a href="https://github.com/actions/upload-artifact/commit/8747d8cd7632611ad6060b528f3e0f654c98869c"><code>8747d8c</code></a> Update README.md</li> <li>Additional commits viewable in <a href="https://github.com/actions/upload-artifact/compare/v4...v5">compare view</a></li> </ul> </details> <br /> Updates `awalsh128/cache-apt-pkgs-action` from 1.5.4 to 1.6.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/awalsh128/cache-apt-pkgs-action/releases">awalsh128/cache-apt-pkgs-action's releases</a>.</em></p> <blockquote> <h2>v1.6.0</h2> <h2>What's Changed</h2> <ul> <li>fix: skip invalid lines by <a href="https://github.com/SMoraisAnsys"><code>@SMoraisAnsys</code></a> in <a href="https://redirect.github.com/awalsh128/cache-apt-pkgs-action/pull/160">awalsh128/cache-apt-pkgs-action#160</a></li> <li>Add if-empty-packages optional input by <a href="https://github.com/tueda"><code>@tueda</code></a> in <a href="https://redirect.github.com/awalsh128/cache-apt-pkgs-action/pull/154">awalsh128/cache-apt-pkgs-action#154</a></li> <li>Fix ls error when no tar files exist in cache restore by <a href="https://github.com/Copilot"><code>@Copilot</code></a> in <a href="https://redirect.github.com/awalsh128/cache-apt-pkgs-action/pull/170">awalsh128/cache-apt-pkgs-action#170</a></li> <li>Add support for third-party PPA repositories via add-repository parameter by <a href="https://github.com/Copilot"><code>@Copilot</code></a> in <a href="https://redirect.github.com/awalsh128/cache-apt-pkgs-action/pull/173">awalsh128/cache-apt-pkgs-action#173</a></li> <li>Pin actions by <a href="https://github.com/danewilson"><code>@danewilson</code></a> in <a href="https://redirect.github.com/awalsh128/cache-apt-pkgs-action/pull/175">awalsh128/cache-apt-pkgs-action#175</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/SMoraisAnsys"><code>@SMoraisAnsys</code></a> made their first contribution in <a href="https://redirect.github.com/awalsh128/cache-apt-pkgs-action/pull/160">awalsh128/cache-apt-pkgs-action#160</a></li> <li><a href="https://github.com/tueda"><code>@tueda</code></a> made their first contribution in <a href="https://redirect.github.com/awalsh128/cache-apt-pkgs-action/pull/154">awalsh128/cache-apt-pkgs-action#154</a></li> <li><a href="https://github.com/Copilot"><code>@Copilot</code></a> made their first contribution in <a href="https://redirect.github.com/awalsh128/cache-apt-pkgs-action/pull/170">awalsh128/cache-apt-pkgs-action#170</a></li> <li><a href="https://github.com/danewilson"><code>@danewilson</code></a> made their first contribution in <a href="https://redirect.github.com/awalsh128/cache-apt-pkgs-action/pull/175">awalsh128/cache-apt-pkgs-action#175</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/awalsh128/cache-apt-pkgs-action/compare/v1.5.2...v1.5.4">https://github.com/awalsh128/cache-apt-pkgs-action/compare/v1.5.2...v1.5.4</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li>See full diff in <a href="https://github.com/awalsh128/cache-apt-pkgs-action/compare/v1.5.4...v1.6.0">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) Dependabot will merge this PR once CI passes on it, as requested by @dchansen06. [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore <dependency name> major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself) - `@dependabot ignore <dependency name> minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself) - `@dependabot ignore <dependency name>` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself) - `@dependabot unignore <dependency name>` will remove all of the ignore conditions of the specified dependency - `@dependabot unignore <dependency name> <ignore condition>` will remove the ignore condition of the specified dependency and ignore conditions </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
# Code Owners ## Problem and Scope Current roles were overly restrictive (see #107) and blocked merges ## Description Require approval from the firmware lead in the `CODEOWNERS` file before merging ## Gotchas and Limitations Must keep the file up to date, anyone with root can override it of course ## Testing - [ ] HOOTL testing - [ ] HITL testing - [x] Human tested ### Testing Details To be seen, may auto-request reviews but that is life ## Larger Impact None as all PRs are already reviewed by firmware lead ## Additional Context and Ticket See the issues in #107 --------- Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
# Expand Gersemi Configuration ## Problem and Scope CMake auto formatter was over-expanding certain functions and not being super nice ## Description Add and tweak a configuration file for Gersemi (the cmake auto format engine), only real change was shrinking max line length ## Gotchas and Limitations Should help with keeping code clean ## Testing - [x] HOOTL testing - [ ] HITL testing - [x] Human tested ### Testing Details Whether changes look right ## Larger Impact Every in progress PR will need to pull the change but it should be fairly automatic ## Additional Context and Ticket Resolves #109 --------- Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
…#114) # Removed Unused STM32L4 CMSIS Components ## Problem and Scope CMSIS was imported for `STM32L476xG` with all of the header files and startup assembly files in it for the `STM32L4` family, approximately 91% larger than it needed to be (34 MB vs 3 MB) ## Description Remove unused header files in the STM32L4 CMSIS library and unused startup assembly files. Removed duplicate files in CMSIS that were in `CompileDependencies`. ## Gotchas and Limitations None ## Testing - [x] HOOTL testing - [ ] HITL testing - [x] Human tested ### Testing Details L4BLINKY blinks as expected (only @JayWango has one to test) ## Larger Impact None, the removed header files would never be used considering the platform in question is explicitly labeled the `STM32L476xG`. The removed startup assembly files should definitely not be used as they are for different chipset. Deduplicates the different CMSIS files in `CompileDependencies`. ## Additional Context and Ticket Removes ~31 MB.
Hopefully container based development will make development more standardized --------- Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Daniel Hansen <105574022+dchansen06@users.noreply.github.com>
# Shared Compilation Cache in GitHub Actions ## Problem and Scope GitHub Actions does a lot of recompilation of things that do not change much, notably HAL/LL and CMSIS drivers which are quite large. ## Description Implement `sccache` to handle caching across runs of a given action ## Gotchas and Limitations Cache becomes an issue, but should be automatically hashed against correctly by `sccache` and is the preferred solution on Windows compared to `ccache` ## Testing - [x] HOOTL testing - [ ] HITL testing - [x] Human tested ### Testing Details HOOTL tests run and correctly invalidate cache Changing a header file invalidates the cache ## Larger Impact Speeds up build times ## Additional Context and Ticket Resolves #113
# Remove C++ Build Requirement ## Problem and Scope `gcc-arm-none-eabi.cmake` required `arm-none-eabi-g++` for compilation and linking, even though no C++ is used ## Description Replace g++ with gcc where appropriate to simplify depedency management ## Gotchas and Limitations To be seen, should be the exact same. Formally cannot do C++ now ## Testing - [x] HOOTL testing - [ ] HITL testing - [x] Human tested ### Testing Details Ran BLINKY on STM32G4 without having `arm-none-eabi-g++` ## Larger Impact Slightly easier dependency resolution ## Additional Context and Ticket Resolves #118
# Thread-safe Circular Buffer ## Problem and Scope GR_CircularBuffer_Push can potentially cause GR_CircularBuffer_Pop to return a de-allocated pointer if they are ran concurrently. ## Description This branch solves the problem by moving the free() statement after updating the head iterator to ensure that the freed item cannot be accessed through the head iterator. ## Gotchas and Limitations This concurrency fix does not take in consideration of the speed of atomic operations. ## Testing - [x] HOOTL testing - [ ] HITL testing - [ ] Human tested ### Testing Details Covers all functions. See implementation for details. ## Larger Impact Critical for thread across peripherals.
Right now, this psuedocode outputs `false`: ```c buffer = GR_CircularBuffer_Create(5); GR_CircularBuffer_Pop(buffer_ptr); empty = GR_CircularBuffer_IsEmpty(buffer_ptr) print(empty) // outputs false ``` i.e., it thinks that an empty buffer is not empty. This is because `Pop()` always increments `head++` even if there is nothing to pop. I added a simple check to fix this, as well as a test to prevent regression. I verified that the test fails without my addition, and all tests succeed with it. --------- Co-authored-by: Thomas Xu <thomas.xu.7@outlook.com>
# Fedora Monorepo Tools ## Problem and Scope Fedora 42 worked but Fedora 43 currently has a broken `arm-none-eabi-gcc` toolchain ## Description Direct users to install from the Arm website if running Fedora 43 until a fix is out ## Gotchas and Limitations Other OSs may have this limitation too ## Testing - [ ] HOOTL testing - [ ] HITL testing - [x] Human tested ### Testing Details @anthony9975 Will likely test and confirm it works ## Larger Impact Helps new users Also made FreeBSD use `sudo` for installation 0b5a272 ## Additional Context and Ticket Resolves #117 --------- Signed-off-by: Daniel Hansen <105574022+dchansen06@users.noreply.github.com>
# Bit Manipulation Library ## Problem and Scope Bit manipulations get undecipherable quickly and this leads to bugs ## Description Create a library that can handle basic bit operations ## Gotchas and Limitations Intended strictly for transmission ## Testing - [x] HOOTL testing - [ ] HITL testing - [x] Human tested ### Testing Details Added lots of HOOTL tests and no problems were identified ## Larger Impact Helps with CAN messages, super critical to get right </details> ## Additional Context and Ticket > message data is MSB (bit) first, the bytes of larger integers are sent in little endian order [GR24/25 CAN ID Assignments](https://docs.google.com/spreadsheets/d/1XfJhhAQoDnuSuwluNitPsDWtuQu-bP-VbEGPmSo5ujA/edit?disco=AAABd7Xz9Us) --------- Signed-off-by: Daniel Hansen <105574022+dchansen06@users.noreply.github.com> Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
# Unify CMSIS Together ## Problem and Scope Each `Lib/Platform/<CHIP>` has its own CMSIS library, which are all directly from Arm and have different versions and different behavior, and also copies upwards of 5 MiB each time It also does not scale well for including other CMSIS functionalities ## Description Implement a `CMSIS_5_CORE` vendor library that can be linked to from within a given platform that contains all of the CMSIS functionalities ## Gotchas and Limitations Cannot upgrade to CMSIS 6 due to STM support ## Testing - [x] HOOTL testing - [ ] HITL testing - [x] Human tested ### Testing Details Compiles and flashes - [x] Nucleo-G474RE projects - [x] `G4BLINKY` - [x] `G4HELLO` - [x] `ECU` - [x] STM32U5 - [x] `U5BLINKY` - [ ] STM32L4 - [ ] `L4BLINKY` ## Larger Impact Extensible and modular things are nice ## Additional Context and Ticket Resolves #115 --------- Signed-off-by: Daniel Hansen <105574022+dchansen06@users.noreply.github.com> Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
# Demystify `Platform` ## Problem and Scope `Platform` contains HAL, LL, CMSIS, linker scripts, startup scripts, compiler flags, and linker flags. This leads to a large block of obtuse code that does not support easy modularization. ## Description Move CMSIS, HAL, and LL to `Vendor` since they are libraries and package each as appropriate as a separate CMake `INTERFACE` ## Gotchas and Limitations None, simpler to make new boards and cleaner for sub-groupings ## Testing - [x] HOOTL testing - [ ] HITL testing - [x] Human tested ### Testing Details - [x] `G4BLINKY` - [x] `G4HELLO` - [x] `U5BLINKY` - [ ] `L4BLINKY` - [x] Current version of `ECU` ## Larger Impact Makes code easier to maintain ## Additional Context and Ticket Builds off of #126, plan to merge #126 before #128 for ease of upgrade paths Resolves #127 --------- Signed-off-by: Daniel Hansen <105574022+dchansen06@users.noreply.github.com> Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
# Temporary CAN Infrastructure ## Problem and Scope Need a placeholder for using CAN inside of ECU and other boards since URCA is not ready ## Description Adds a temporary library that contains header file information from GR25 for use as a temporary holdover ## Gotchas and Limitations Old and inaccurate but better than nothing, labelled as old everywhere though ## Testing - [ ] HOOTL testing - [ ] HITL testing - [x] Human tested ### Testing Details Looked at ## Larger Impact Enables ECU work to get moving ## Additional Context and Ticket See [CSV-25](https://github.com/Gaucho-Racing/CSV-25) and the URCA work --------- Co-authored-by: amysaffer <amysaffer@users.noreply.github.com> Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Signed-off-by: Daniel Hansen <105574022+dchansen06@users.noreply.github.com>
… not a file on POSIX compliant systems... no idea how that happened to be perfectly honest
…t an IO call or anything
Signed-off-by: Daniel Hansen <105574022+dchansen06@users.noreply.github.com>
Co-authored-by: Ng0710 <Ng0710@users.noreply.github.com> Co-authored-by: Thomas Xu <XuChe777@users.noreply.github.com> Co-authored-by: khoulihan27 <khoulihan27@users.noreply.github.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
2 PRIORITY
Important and a priority, but less than URGENT
Boards
Related to or involving any physical boards
Documentation
Improvements or additions to documentation
Enhancement
New feature or request
Small Fry
Something that is small, could include bug fixes or smaller changes
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Finite State Machine & Logical Control Loop
Problem and Scope
We need the car to work
Description
It makes the car work
Adds a comment layout for what the ideal state machine loop looks like, what it calls, etc.
Gotchas and Limitations
Comments, code still needs to be written and validated
Testing
Testing Details
None
Larger Impact
Key to later ECU work
Additional Context and Ticket
Works for #151 and with #158