Skip to content
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

Add FlexRay support on windows #555

Merged
merged 4 commits into from
Jul 18, 2024
Merged

Add FlexRay support on windows #555

merged 4 commits into from
Jul 18, 2024

Conversation

rumpelsepp
Copy link
Member

@rumpelsepp rumpelsepp commented Jul 17, 2024

  • feat(win32): Add tier-2 support for windows platforms
  • feat(flexray): Add support for FlexRay via the Vector XL library

Superseeds #546. You need Windows and this library.

@rumpelsepp rumpelsepp requested a review from peckto as a code owner July 17, 2024 12:24
@rumpelsepp rumpelsepp force-pushed the flexray branch 2 times, most recently from 9dcf671 to 10f3433 Compare July 17, 2024 12:45
@rumpelsepp rumpelsepp added the enhancement New feature or request label Jul 18, 2024
There are some situations out there where contact to windows platforms
cannot be avoided. An example for this are very special setups using
vector tooling and hardware. Unfortunately, these companies support
windows only (and WSL2 is not an option, too). Windows at least provides
something like a commandline and gallia is able to run natively; but
with some restrictions:

- pcap creation is not supported
- LATEST symlinks are not supported
- all protocols that use the linux can stack are not supported
- Some cli invocation might not work as expected due to special handling
  withing the windows terminal. For instance, use the `gallia.toml` file
  to avoid frustration with `--target`.

This patch adds, let's call it tier-2 support for windows. My
definition of tier-2 is: We guarantee that gallia does not crash due to
the usage of unavailable platform APIs. In other words, if a feature does
not work on Windows it will be disabled rather than ported.

There is a linter job available for checking those cases.
This patch adds FlexRay support using the Vector XL library. This only
works on windows. Since there is no general software stack available on
windows, an implementation for ISO-TP over FlexRay is included in this
patch.

In theory, the ISO-TP implementation can be used for CAN as well. If
needed it can be placed in its own module after some refactoring.
However, it is not complete: FlowControl is not implemented completely.
In my tests it did work for the test setup I had.
In theory the following should work: Dump the flexray config from canoe
to a file and use this configuration later on.
@rumpelsepp rumpelsepp merged commit 27401ed into master Jul 18, 2024
12 checks passed
@rumpelsepp rumpelsepp deleted the flexray branch July 18, 2024 15:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant