FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

chore(nuttx): bump NuttX for the FlexCAN TX fixes by dakejahl · Pull Request #28393 · PX4/PX4-Autopilot · GitHub

chore(nuttx): bump NuttX for the FlexCAN TX fixes - #28393

Merged
dakejahl merged 1 commit into
mainfrom
dakejahl/nuttx-bump-flexcan-tx
Aug 26, 2026
Merged

dakejahl merged 1 commit into
mainfrom
dakejahl/nuttx-bump-flexcan-tx

Conversation

Copy link
Copy Markdown
Contributor

Summary

Bumps the NuttX submodule to the current px4_firmware_nuttx-10.3.0+ tip, picking up PX4/NuttX #395 and #396. No PX4-side changes.

Problem

The imxrt FlexCAN driver left the TX mailbox CS word uninitialised, so classic frames were transmitted with EDL set and reached the bus as CAN FD. Separately, its TX timeout handler aborted the wrong mailbox and used an expiry test that fires across any second boundary, so live frames were aborted. Either one drives the transmit error counter to error passive and pins the mailbox allocator, and transmit never recovers — including across a reboot.

Solution

#396 zero-initialises the mailbox union and gates BRS on imxrt, s32k1xx, s32k3xx and kinetis. #395 fixes the timeout handler's mailbox indexing, expiry comparison, deadline lifetime and ring bound on imxrt, and assigns MCR MAXMB rather than OR-ing it in.

Measured on an ARK FMU-v6XRT with a DroneCAN GNSS node offering 736 frames/s: 0 frames/s and error passive before, 734 frames/s at 0.1% loss and error active after.

The imxrt FlexCAN driver left the TX mailbox CS word uninitialised, so
classic frames went out with EDL set and appeared on the wire as CAN FD,
and its TX timeout handler aborted mailboxes that were still
transmitting. Either one takes the interface error passive and it never
recovers.

Picks up PX4/NuttX #395 and #396.
github-actions Bot added kind:chore Maintenance work that keeps the project healthy. scope:dependencies Dependency or submodule updates. labels Aug 26, 2026
dakejahl merged commit cd512ae into main Aug 26, 2026
69 checks passed
dakejahl deleted the dakejahl/nuttx-bump-flexcan-tx branch August 26, 2026 18:29
mrpollo pushed a commit that referenced this pull request Sep 10, 2026
The imxrt FlexCAN driver left the TX mailbox CS word uninitialised, so
classic frames went out with EDL set and appeared on the wire as CAN FD,
and its TX timeout handler aborted mailboxes that were still
transmitting. Either one takes the interface error passive and it never
recovers.

Picks up PX4/NuttX #395 and #396.

(cherry picked from commit cd512ae)
Assisted-by: GitHub Copilot:gpt-6-astra
mrpollo pushed a commit that referenced this pull request Sep 10, 2026
The imxrt FlexCAN driver left the TX mailbox CS word uninitialised, so
classic frames went out with EDL set and appeared on the wire as CAN FD,
and its TX timeout handler aborted mailboxes that were still
transmitting. Either one takes the interface error passive and it never
recovers.

Picks up PX4/NuttX #395 and #396.

(cherry picked from commit cd512ae)
Assisted-by: GitHub Copilot:gpt-6-astra
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
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

kind:chore Maintenance work that keeps the project healthy. scope:dependencies Dependency or submodule updates.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant


Back | FazBrowse Home | New Git URL