Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Controller Area Network (CAN) #103

Open
reneherrero opened this issue Nov 27, 2020 · 5 comments · May be fixed by #171
Open

Controller Area Network (CAN) #103

reneherrero opened this issue Nov 27, 2020 · 5 comments · May be fixed by #171
Labels
enhancement New feature or request help wanted Extra attention is needed

Comments

@reneherrero
Copy link

Hi,

Wondering if anyone has ventured into the Controller Area Network (CAN) space?

Thanks,

@mciantyre
Copy link
Member

I've not worked with CAN before, and I haven't heard of anyone working on a Rust-based CAN driver for these processors. I'm happy to support an i.MX RT CAN driver's development, then maintain it here.

Here's a quick summary of CAN support across the i.MX RT processor families. Let me know if we see a discrepancy.

i.MX RT CAN support? CANFD support?
1010 NO NO
1015 NO NO
1020 YES NO
1050 YES NO
1060 YES YES
1064 YES YES

We could implement embedded-can, then transition to the embedded-hal equivalent traits if / when it's merged.

@DavidTheFighter
Copy link
Contributor

I have a CANFD only implementation written for the Teensy. It's pretty application specific to what I'm doing with it, and a little very messy code-wise, but it could be a decent reference for anyone else implementing their own. You can find it here: https://github.com/DavidTheFighter/teensy4-canfd
I'm planning on rewriting it at some point so it depends only on imxrt-hal, however the only real teensy4-bsp dependency is for the interrupt handler.

@rnd-ash
Copy link

rnd-ash commented May 10, 2021

I too would love this. I plan on using a Teensy 4.0 as a Transmission ECU for this project, and want to use Rust rather than C++.

However, my TCM only uses standard 500kbps CAN 1.0 rather than CAN-FD or CAN-2.0.

I might try and get an implementation working some time in the next couple weeks.

@teburd teburd added enhancement New feature or request help wanted Extra attention is needed labels Nov 12, 2021
@myCatPlaysFetch
Copy link

I have some decent experience with CAN, and specifically with the 1064, but only in C. I'd like experience with Rust. I could maybe be of some help here. If nothing else, I'm open to offering some support?

@talhaHavadar
Copy link

I have some decent experience with CAN, and specifically with the 1064, but only in C. I'd like experience with Rust. I could maybe be of some help here. If nothing else, I'm open to offering some support?

Here you can find CAN implementation example in Rust. https://github.com/stm32-rs/bxcan

@mciantyre mciantyre linked a pull request Dec 12, 2022 that will close this issue
@mciantyre mciantyre linked a pull request Aug 19, 2024 that will close this issue
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
enhancement New feature or request help wanted Extra attention is needed
Projects
None yet
7 participants