Skip to content

feat(boards/dakefpv): add DAKEFPV H743 board support - #27389

Closed
mor2code wants to merge 6 commits into
PX4:mainfrom
nadirwave:feature/dakefpv-h743-pr
Closed

feat(boards/dakefpv): add DAKEFPV H743 board support#27389
mor2code wants to merge 6 commits into
PX4:mainfrom
nadirwave:feature/dakefpv-h743-pr

Conversation

@mor2code

Copy link
Copy Markdown
Contributor

Adds PX4 support for the DAKEFPV H743 flight controller (STM32H743, board_id 1193).

  • Dual ICM-42688P IMUs on SPI1 (ROLL_180) and SPI4 (PITCH_180)
  • SPL06 barometer on I2C2 (external connector, requires battery power)
  • Micron N25Q128 SPI NOR flash via SPI3, mounted as /fs/microsd using littlefs (no SD card)
  • AT7456E OSD on SPI2
  • u-blox GPS on USART1
  • 8 DShot motor outputs (TIM2: M1–M4, TIM4: M5–M8), 4 servo outputs (TIM15: S1–S2, TIM8: S3–S4)
  • 8 UARTs; parameters stored in STM32H743 internal flash sector 15
  • USB: 0x1209:0x5741 firmware, 0x1209:0x5740 bootloader

Pin assignments verified against ArduPilot hwdef/DAKEFPVH743/hwdef.dat and Betaflight configs/DAKEFPVH743/config.h. USB VID/PID matches ArduPilot.

An extras.txt file is seeded on first boot for optional driver start commands (IST8310 compass at 0x0C, etc.). MAVLink FTP write does not work on NuttX littlefs; extras must be written via NSH >> append.

Tested on hardware: dual IMUs, SPL06 baro, GPS, DShot, MAVLink telemetry all verified.

mor2code added 2 commits May 19, 2026 07:28
Port of the DAKEFPV H743 flight controller (non-Pro, STM32H743 variant)
to PX4 v1.16. Hardware verified against Betaflight and ArduPilot hwdefs.

Sensors (verified hardware):
- 2x ICM-42688P IMUs on SPI1 (ROLL_180) and SPI4 (PITCH_180)
- SPL06 barometer on I2C2 @ 0x76 (requires battery power)
- Micron N25Q128 16MB SPI NOR flash on SPI3 (PA15 CS), mounted as
  /fs/microsd using littlefs for blackbox logging

Key implementation details:
- BOARD_FLASH_SIZE = 16x128K (full 2MB), BOARD_FLASH_SECTORS = 14,
  APP_RESERVATION_SIZE = 128K for param sector at 0x081E0000
- Onboard flash is Micron N25Q128 (JEDEC 0x20/0xBA/0x18), not Winbond;
  w25 driver extended via NuttX submodule patch
- I2C2 registered as external bus; baro and compass share bus cleanly
  when compass is started after baro via extras.txt
- VBUS sensing disabled: PA9 is shared with USART1 TX (GPS1)
- USB identity 0x1209:0x5741 matches ArduPilot

User extras.txt workflow:
  rc.board_extras creates /fs/microsd/etc/ and seeds extras.txt on
  first boot. Users add driver commands via NSH append.
@github-actions github-actions Bot added kind:feature Request or change that adds new functionality. scope:dependencies Dependency or submodule updates. scope:build-system CMake, Kconfig, board config, or build tooling. scope:boards Board-specific changes or hardware definitions. scope:docs labels May 19, 2026
…43 Pro

Signed-off-by: Nir Mor <nir.mor@gmail.com>
@mor2code
mor2code force-pushed the feature/dakefpv-h743-pr branch from 714764b to 58b3a01 Compare May 19, 2026 04:40
@github-actions

github-actions Bot commented May 19, 2026

Copy link
Copy Markdown
Contributor

/en/SUMMARY.md

  • LinkedInternalPageMissing: This linked file is missing: flight_controller/dakefpv_h743pro.md
  • LinkedInternalPageMissing: This linked file is missing: flight_controller/dakefpv_h743slim.md

@mor2code

Copy link
Copy Markdown
Contributor Author

cc @engineer-dakefpv — PX4 port for the DAKEFPV H743. All CI passing. Would appreciate a review of the pin assignments and hardware configuration.

mor2code added 2 commits May 20, 2026 05:20
Signed-off-by: Nir Mor <nir.mor@gmail.com>
Signed-off-by: Nir Mor <nir.mor@gmail.com>
@mor2code

Copy link
Copy Markdown
Contributor Author

Superseded by #27522, which consolidates the H743, H743 Pro and H743 Slim board support into a single PR. Closing in favor of that one.

@mor2code mor2code closed this May 30, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

kind:feature Request or change that adds new functionality. scope:boards Board-specific changes or hardware definitions. scope:build-system CMake, Kconfig, board config, or build tooling. scope:dependencies Dependency or submodule updates. scope:docs

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant