Skip to content

TEST: Native CAN TX buffer 32 -> 64 (BMW i3 80 s buffer full) - #4

Open
mbuhansen wants to merge 1 commit into
slave-master-own-kostal-new-bydfrom
test/native-can-tx-buffer-64
Open

mbuhansen wants to merge 1 commit into
slave-master-own-kostal-new-bydfrom
test/native-can-tx-buffer-64

Conversation

@mbuhansen

Copy link
Copy Markdown
Owner

Test build only, on the own fork, to get CI firmware.

BMW i3 nodes raise CAN_NATIVE_BUFFER_FULL exactly every 80 s (82, 162, 242 ... s after boot). The 640 ms, 5 s and 10 s send timers in BMW-I3-BATTERY.cpp line up every 80 s (LCM of 640 and 5000 ms), queueing roughly 34 frames within a few ms, more than the ACAN_ESP32 default TX buffer of 32. 0x108 and 0x19E (added in v10.13.0) pushed the peak over the limit.

Test: flash one node and check whether the 80 s events disappear there while they continue on the other nodes.

🤖 Generated with Claude Code

Test build: BMW i3 nodes raise CAN_NATIVE_BUFFER_FULL exactly every 80 s.
That is when the 640 ms, 5 s and 10 s send timers fall due together
(LCM of 640 and 5000 ms) and roughly 34 frames are queued within a few
milliseconds, more than the library default of 32.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@github-actions

github-actions Bot commented Oct 4, 2026

Copy link
Copy Markdown

Firmware size report

No base-branch size reports available for slave-master-own-kostal-new-byd yet; showing absolute sizes only. Deltas will appear once a compile run on the base branch has published size artifacts.

Board New size Max % Flash Δ Flash
Lilygo T-CAN485 1,890,871 1,966,080 96.17% —
ESP32 DevKit V1 1,830,863 1,966,080 93.12% —
Stark CMR 1,912,399 3,342,336 57.22% —
DFRobot Edge101 1,966,891 6,553,600 30.01% —
Waveshare ESP32S3RS485CAN 1,895,466 6,553,600 28.92% —
Lilygo T-2CAN 1,888,172 6,553,600 28.81% —
BECom ES32S3 1,884,400 6,553,600 28.75% —

To test this firmware on your device:

  1. Make sure you're logged into GitHub
  2. Click the link above corresponding to your hardware type
  3. Download the .ota.bin file for your board
  4. Upload the .ota.bin via OTA

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.

1 participant