Conversation
Branch Targeting SuggestionYou've targeted the
If This is an automated suggestion to help route contributions to the appropriate branch. |
PR Compliance Guide 🔍All compliance sections have been disabled in the configurations. |
There was a problem hiding this comment.
High-level Suggestion
The PR adds a new hardware target with a known critical bug (broken OSD). It is suggested to close the PR and not merge it until the issue is fixed in a separate fork. [High-level, importance: 10]
Solution Walkthrough:
Before:
// src/main/target/HAKRCH743/target.h
// The PR adds configuration for a new hardware target,
// including enabling the OSD feature.
/*** OSD ***/
#define USE_MAX7456
#define MAX7456_SPI_BUS BUS_SPI3
#define MAX7456_CS_PIN PE2
...
#define DEFAULT_FEATURES (FEATURE_OSD | FEATURE_TELEMETRY | ...)
// However, the PR author explicitly states in the description:
// "OSD is not working properly !!"After:
// No code is merged into the main branch.
// The PR is closed, as it introduces a non-functional hardware target.
// Development on the HAKRCH743 target should continue in a separate fork.
// The PR should only be re-submitted once all critical features,
// including the OSD, are fully functional and verified.
src/main/target/HAKRCH743/target.c
Outdated
| DEF_TIM(TIM1, CH1, PA8, TIM_USE_LED, 0, 9), // LED_2812 | ||
| DEF_TIM(TIM1, CH1, PE9, TIM_USE_BEEPER, 0, 0), // BEEPER |
There was a problem hiding this comment.
✅ Suggestion: Change the beeper's timer from TIM1, CH1 to TIM1, CH2 to resolve a resource conflict with the LED strip, which uses the same timer channel. [possible issue, importance: 9]
| DEF_TIM(TIM1, CH1, PA8, TIM_USE_LED, 0, 9), // LED_2812 | |
| DEF_TIM(TIM1, CH1, PE9, TIM_USE_BEEPER, 0, 0), // BEEPER | |
| DEF_TIM(TIM1, CH1, PA8, TIM_USE_LED, 0, 9), // LED_2812 | |
| DEF_TIM(TIM1, CH2, PE9, TIM_USE_BEEPER, 0, 0), // BEEPER |
Co-authored-by: qodo-code-review[bot] <151058649+qodo-code-review[bot]@users.noreply.github.com>
|
Thank you for the automated reply from the robot. Based on the feedback you provided, I have further optimized target.c and conducted testing. All functions work normally except for OSD. Therefore, I hope someone from the development team can help check whether there is any problem with my hardware design. |
|
The bot's suggestion "Correct the duplicated motor output indices" is incorrect and should be ignored. For the OSD, are you using a MAX7456 chip, or a simulation? |
Thank you for your reply. We are using the MAX7456 chip mounted on the flight controller. |
|
Okay, we can poke around with the OSD using the test sample board. Have you already sent one to a developer? That may sound like a silly question if this FC happens to be the one in the box on my workbench right now. :) |
No, I haven't sent the test sample to the development team yet. I emailed this coredev@inavflight.com address, and once I get the mailing address, I will send the test sample as soon as possible. |
Can you ping me or another developer on the Discord, please? |
No problem, I sent you a message on Discord. |
User description
User description
Added support for the HAKRCH743 flight control board.
Board hardware verification
Folder Structure
Hardware Verification
Notes
Description
Problem Description
I have checked both the hardware and software parts and found no issues, but the OSD still does not work properly. Therefore, I would like to create this new task to seek help from the development team. I can provide all relevant materials, including test samples.
Before this, I created the related issue: Building the new HAKRCH743 target, OSD cannot function properly · Issue #11135 · iNavFlight/inav
PR Type
Enhancement
Description
Adds support for HAKRCH743 STM32H743 flight controller board
Configures dual ICM42688 IMU sensors on separate SPI buses
Defines 12 PWM/DSHOT motor outputs with timer configuration
Implements comprehensive I/O: 8 UARTs, dual I2C, SPI, ADC, SDIO
Enables OSD, blackbox logging, LED strip, and PinIO features
Diagram Walkthrough
File Walkthrough
target.h
Complete hardware configuration and pin definitionssrc/main/target/HAKRCH743/target.h
HK743and USB product stringtarget.c
Timer hardware and IMU bus device registrationsrc/main/target/HAKRCH743/target.c
config.c
Target-specific configuration initializationsrc/main/target/HAKRCH743/config.c
targetConfiguration()function for board-specific setupCMakeLists.txt
Build system configurationsrc/main/target/HAKRCH743/CMakeLists.txt