Skip to content

New target: SPEDIXH743#11567

Open
sensei-hacker wants to merge 2 commits into
iNavFlight:maintenance-9.xfrom
sensei-hacker:new-target-spedixh743
Open

New target: SPEDIXH743#11567
sensei-hacker wants to merge 2 commits into
iNavFlight:maintenance-9.xfrom
sensei-hacker:new-target-spedixh743

Conversation

@sensei-hacker
Copy link
Copy Markdown
Member

Summary

Adds a new target for the Spedix H743, an STM32H743-based flight controller with dual ICM42688P gyros.

Hardware

  • MCU: STM32H743
  • Gyros: 2× ICM42688P — Gyro1 on SPI1 (CS: PA15, EXTI: PD7), Gyro2 on SPI4 (CS: PE3, EXTI: PE4)
  • OSD: MAX7456 on SPI2
  • Blackbox: M25P16 on SPI3
  • Baro: BMP280 / DPS310 on I2C1
  • Motors: 8× (TIM1×4, TIM8×2, TIM3×2)
  • UARTs: 8 (+ VCP)
  • ADC: VBat (PC1), Current (PC2)
  • PINIO: VTX power switch (PA2), Camera switch (PA3)
  • LED strip: WS2812 on PA0 (TIM5_CH1)

Changes

  • src/main/target/SPEDIXH743/target.h — pin definitions, feature enables, UART/SPI/I2C/ADC config
  • src/main/target/SPEDIXH743/target.c — timer hardware table, BUSDEV SPI registrations for both gyros
  • src/main/target/SPEDIXH743/config.c — PINIO box assignments (USER1/USER2)
  • src/main/target/SPEDIXH743/CMakeLists.txt — build system registration

Notes

  • Both gyros use DEVHW_ICM42605 (the ICM42605 driver is compatible with the ICM42688P)
  • Gyros use polling mode (NONE irqPin) via USE_TARGET_IMU_HARDWARE_DESCRIPTORS
  • The board has GYRO_CLKIN pins (PA5, PB0) but INAV does not implement GYRO_CLKIN; those pins are left as unconfigured GPIO and are not declared in the timer table

Testing

  • Built successfully against maintenance-9.x with zero warnings
  • Flash usage: 35% of 1,792 KB — well within limits
  • No hardware available for on-FC testing; requesting testing from anyone with this FC

Code Review

Reviewed prior to PR — no critical issues. Dead CAMERA_CONTROL_PIN define (Betaflight-ism not used in INAV) was caught and removed during review.

Documentation

No end-user documentation needed for a new target.

STM32H743 based FC with dual ICM42688P gyros on SPI1/SPI4,
MAX7456 OSD on SPI2, M25P16 flash on SPI3, BMP280/DPS310 baro
on I2C1, 8 motors (TIM1x4, TIM8x2, TIM3x2), 8 UARTs, and
PINIO for VTX and camera switching.
@sensei-hacker sensei-hacker added the New target This PR adds a new target label May 18, 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
Copy link
Copy Markdown

github-actions Bot commented May 18, 2026

Test firmware build ready — commit c629c69

Download firmware for PR #11567

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
Copy link
Copy Markdown
Member Author

sensei-hacker commented May 21, 2026

  • Samples received
  • Flash firmware
  • Calibrate
  • Orientation matches
  • Gyro working
  • Accel working
  • Baro working
  • Blackbox
  • UART1
  • UART2
  • UART3
  • UART4
  • UART6
  • UART7
  • UART8
  • Buzzer working
  • DShot support on m1-4
  • Additional motor / servo outputs
  • Voltage sensor
  • Current sensor
  • I2C Bus
  • Analog Camera working
  • Video Out working
  • OSD working
  • LEDs working
  • PINIO1
  • PINIO2

PC-port pins on STM32H743 require ADC3. PC1 (VBat, ADC123_INP11)
and PC2 (Current, ADC3_INP0) both work on ADC3; ADC1 init silently
fails for these pins. Same fix applied to MAMBAH743, FOXEERH743.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

New target This PR adds a new target

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant