Releases: mjbots/fdcanusb
Releases · mjbots/fdcanusb
2026-02-16
- Only report USB frames to the host when data is available, rather than doing so as fast as possible all the time. This fixes behavior that has been present since the very first fdcanusb release.
2026-01-08
- Present as both a USB CDC device and a gs_usb device at the same time. This means that either the original line based CDC protocol can be used, or the Linux kernel's gs_usb socketcan device can be used (or both at the same time, although that isn't recommended). tview and moteus_tool work with either interface, although the socketcan interface does require configuration to get the bitrate and sample point correct for moteus.
2025-09-19
- Add RX and TX software FIFOs
- There was a 3 level hardware FIFOs before, now there is additionally a 32 position TX software FIFO and a roughly 20-40 position RX FIFO
- This enables communication where either one message results in many responses, or many commands are sent at once
- Switch to use auto-retransmit by default
- To make this not get stuck, a configurable heuristic is added which discards transmissions after by default 50ms of attempts
- This enables operation where many devices are commanded at once, as previously our own transmissions could lose arbitration to a response
- Improve runtime performance
- Optimize various routines and improve buffering
- This enables much higher effective update rates, 1600Hz vs 800Hz for single devices, and 400Hz vs 90Hz for 10 devices on the same bus
2025-07-21
- Support configuring the sample point for nominal and data frames using
can.sample_pointandcan.fd_sample_point. 0.666 is the default, which was the hard-coded value previously.
2025-01-14
- Implement
can.autorecoverwhich can be used to automatically re-enable the bus if it enters bus off
2023-03-24
- Support fdcanusb r2.5
2021-05-27
- Support UUID
2021-01-18
0.1-20210118 r2.3 as sent for mf