-
Notifications
You must be signed in to change notification settings - Fork 143
This issue was moved to a discussion.
You can continue the conversation there. Go to discussion →
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
RFC: Improved CAN infrastructure #294
Comments
I'm on-board with this, as long as the XPCC protocol behavior is not changed. I think externalizing the buffering for packet-oriented peripherals (ie. UART, ADC, DAC, CAN, Ethernet, etc) would be a great benefit. This would require perhaps a generic interface with RX/TX function hooks executed in an IRQ context instead of the polling based approach that we have now. The Buffer interface could provide a generic IRQ-safe implementation of a polling interface instead. |
And to add further: The CAN peripheral isn't used much inside modm, except for XPCC, yet is implemented as a relatively complicated peripheral, so it's a very good candidate to experiment with new interfaces. |
The new STM32 Can IP supports FD-CAN and long frame mode (LFM) with up to 64 Bytes of payload. Option AContinue to use the current Option BChange the Any opinions? |
Does UAVCAN even make use of LFMs? The overhead of the heap is at least 8B, due to alignment and heap info requirements (newlib might even be 16B) so the overall memory saving isn't going to be so large. I'd choose option A for now, also because the UART buffers also copy the data and that makes it consistent (altough for const data, you could pass a |
As far as I know, UAVCAN doesn't use LFM. |
Maybe having two types like |
Maybe we can use something like a flex array? |
This issue was moved to a discussion.
You can continue the conversation there. Go to discussion →
For a project I need a driver for the FDCAN IP present the new STM32H7- and STM32G4-series devices.
To integrate UAVCAN into modm (and for other use cases) prioritized transmit queues are required, see #216 (comment).
Some thoughts:
This will likely introduce some incompatible changes.
Comments? @salkinium @chris-durand @strongly-typed @asmfreak @dergraaf
The text was updated successfully, but these errors were encountered: