Skip to content

Kwabena/mimxrt can#142

Open
kwagyeman wants to merge 1 commit into
openmv:openmv-1.28.0from
kwagyeman:kwabena/mimxrt_can
Open

Kwabena/mimxrt can#142
kwagyeman wants to merge 1 commit into
openmv:openmv-1.28.0from
kwagyeman:kwabena/mimxrt_can

Conversation

@kwagyeman

Copy link
Copy Markdown
Member

Adds support for machine.CAN with the RT1060. Tested and works on the OpenMV Cam RT1062.

@iabdalkader

Copy link
Copy Markdown
Member

Could you squash this in one commit? I'll drop it when rebasing. Also, is there a corresponding openmv pr or just needs a submodule update?

Adds a CAN driver for the mimxrt port using the new machine.CAN API,
including:

- FlexCAN driver with TX queue, RX FIFO, filters, IRQ handling,
  error/state reporting, and cancel_send() per RM 40.7.7.1.
- LOOPBACK, SILENT_LOOPBACK and SILENT modes.
- CAN pin settings for all mimxrt boards, including OPENMV_RT1060.
- extmod/machine_can: preserve the raw bitrate for port-specific init
  and add a callback to signal that all filters have been processed,
  with a matching stub for the stm32 port.
- tests: add a mimxrt CAN target wiring configuration, align the CAN
  tests with the mimxrt port, and fix a startup race in
  machine_can_05_tx_prio_cancel.py.

Co-authored-by: Kwabena W. Agyeman <kwagyeman@live.com>
@kwagyeman kwagyeman force-pushed the kwabena/mimxrt_can branch from 405c561 to 33bb5d8 Compare July 4, 2026 16:56
@kwagyeman

kwagyeman commented Jul 4, 2026

Copy link
Copy Markdown
Member Author

Squashed. And yes, there's an upstream PR: openmv/openmv#3187. It adds the deinits required. Otherwise you get a crash after soft reset.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants