Skip to content

Fix LED strip / ADC1 DMA conflict on DAKEFPVH743PRO#11696

Merged
sensei-hacker merged 1 commit into
iNavFlight:release/9.1from
sensei-hacker:fix-dakefpvh743pro-led-adc-dma
Jul 7, 2026
Merged

Fix LED strip / ADC1 DMA conflict on DAKEFPVH743PRO#11696
sensei-hacker merged 1 commit into
iNavFlight:release/9.1from
sensei-hacker:fix-dakefpvh743pro-led-adc-dma

Conversation

@sensei-hacker

Copy link
Copy Markdown
Member

Summary

Fixes a DMA stream conflict between the LED strip and ADC1 (VBAT/current sensing) on DAKEFPVH743PRO.

Problem

TIM3 CH3 (LED strip) was assigned DMA option 8, which resolves to DMA2 Stream0 on STM32H743. ADC1 (used here for VBAT and current-meter sensing) is hardwired to the same DMA2 Stream0 in the driver. Driving the LED strip and reading VBAT/current at the same time contended for the same DMA stream.

Changes

  • src/main/target/DAKEFPVH743PRO/target.c: LED strip DMA option changed from 8 (DMA2 Stream0) to 9 (DMA2 Stream1), which is unclaimed on this target since ADC2/ADC3 are never enabled here.

This matches the identical fix already merged for the sibling DAKEFPVH743_SLIM target, and the pattern used by several other STM32H7 targets (MATEKH743, FOXEERH743, BLUEBERRYH743, etc.) that route the LED strip off DMA2 Stream0 for the same reason.

Testing

  • Build: DAKEFPVH743PRO builds cleanly, no new warnings, flash/RAM usage unchanged in any meaningful way.
  • Hardware: Tested on physical DAKEFPVH743PRO hardware with LED strip and ADC (VBAT + current sensing) active simultaneously — no telemetry glitching, no LED corruption/flicker.
  • Code review performed (inav-code-review agent) — no issues found, independently re-verified the DMA option → stream mapping and confirmed DMA2 Stream1 is free on this target.

TIM3 CH3 (LED strip) was assigned DMA option 8 (DMA2 Stream0), the
same stream ADC1 uses for VBAT/current sensing, causing DMA
contention between the two peripherals. Move the LED strip to DMA
option 9 (DMA2 Stream1), which is unclaimed on this target, matching
the fix already applied to the sibling DAKEFPVH743_SLIM target.

Verified on physical hardware: LED strip, VBAT, and current sensing
all work correctly with DSHOT and the LED strip active simultaneously.
@sensei-hacker sensei-hacker added this to the 9.1 milestone Jul 7, 2026
@qodo-code-review

Copy link
Copy Markdown
Contributor

Qodo reviews are paused for this user.

Troubleshooting steps vary by plan Learn more →

On a Teams plan?
Reviews resume once this user has a paid seat and their Git account is linked in Qodo.
Link Git account →

Using GitHub Enterprise Server, GitLab Self-Managed, or Bitbucket Data Center?
These require an Enterprise plan - Contact us
Contact us →

@github-actions

github-actions Bot commented Jul 7, 2026

Copy link
Copy Markdown

Test firmware build ready — commit 82090e4

Download firmware for PR #11696

1 targets built. Find your board's .hex file by name on that page (e.g. MATEKF405SE.hex). Files are individually downloadable — no GitHub login required.

Development build for testing only. Use Full Chip Erase when flashing.

@sensei-hacker sensei-hacker merged commit 3110497 into iNavFlight:release/9.1 Jul 7, 2026
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant