Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add new board: AET-H743-Basic #28371

Open
wants to merge 2 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions Tools/AP_Bootloader/board_types.txt
Original file line number Diff line number Diff line change
Expand Up @@ -333,6 +333,8 @@ AP_HW_HGLRCF405V4 1524

AP_HW_MFT-SEMA100 2000

AP_HW_AET-H743-Basic 2024

AP_HW_SakuraRC-H743 2714

# IDs 4200-4220 reserved for HAKRC
Expand Down
Binary file added Tools/bootloaders/AET-H743-Basic_bl.bin
Binary file not shown.
1,276 changes: 1,276 additions & 0 deletions Tools/bootloaders/AET-H743-Basic_bl.hex

Large diffs are not rendered by default.

Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
126 changes: 126 additions & 0 deletions libraries/AP_HAL_ChibiOS/hwdef/AET-H743-Basic/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,126 @@
# AET-H743-Basic Flight Controller

The AET-H743-Basic is a flight controller designed and produced by AeroEggTech

## Features

- STM32H743 microcontroller
- Dual ICM42688P IMUs
- 13 PWM / Dshot outputs
- 8 SERIALs
- 1 CAN
- Dedicated USB board
- DPS310 or SPL06 barometer
- 5V/6V/7V 10A BEC; 9V 2A BEC; 5V 2A BEC
- MicroSD Card Slot
- 2-way camera input
- AT7456E OSD
- 2 I2Cs

## Physical

![AET-H743-Basic overview](AET-H743-Basic_overview.jpg)

![AET-H743-Basic core board](AET-H743-Basic_core_board.png)

![AET-H743-Basic power board](AET-H743-Basic_power_board.png)


## Mechanical

- Dimensions: 36 x 47 x 17 mm
- Weight: 45g


## Power supply

The AET-H743-Basic supports 2-6s Li battery input. It has 3 ways of BEC, which result in 6 ways of power supplys. Please see the table below.

| Power symbol | Power source | Max power (current) |
|--------------|--------------|---------------------|
| 5V | from 5V BEC | 20W (4A) |
| 9V | from 9V BEC | 18W (2A) |
| 9Vsw | from 9V BEC, controlled by MCU with an NPN MOS | 10W (1A) |
| 4V5 | from USB or 5V BEC, with a diode | 5W (1A) |
| VX | from VX BEC, default 5V, can be changed to 6V or 7V | 50W (10A) |
| BAT | directly from battery | (5A) |


## Loading Firmware

Initial firmware load can be done with DFU by plugging in USB with the bootloader button pressed. Then you should load the "with_bl.hex" firmware, using your favorite DFU loading tool, such as Mission Planner.

Once the initial firmware is loaded you can update the firmware using any ArduPilot ground station software. Updates should be done with the "\*.apj" firmware files.

## UART Mapping

- SERIAL0 -> USB
- SERIAL1 -> UART1 (MAVLink2)
- SERIAL2 -> UART2 (GPS)
- SERIAL3 -> UART3 (MAVLink2)
- SERIAL4 -> UART4 (User / AM32 ESCs)
- SERIAL6 -> UART6 (RCIN)
- SERIAL7 -> UART7 (Bluetooth)
- SERIAL8 -> UART8 (User)


## RC Input

The default RC input is configured on the UART6 and supports all RC protocols except PPM. The SBUS pin is inverted and connected to RX6. RC can be attached to any UART port as long as the serial port protocol is set to `SERIALn_PROTOCOL=23` and SERIAL6_Protocol is changed to something other than '23'.


## OSD Support

The AET-H743-Basic supports onboard analog SD OSD using a AT7456 chip. The analog VTX should connect to the VTX pin.


## PWM Output

The AET-H743-Basic supports up to 13 PWM outputs.

All the channels support DShot.

Outputs are grouped and every output within a group must use the same output protocol:

1, 2 are Group 1;

3, 4, 5, 6 are Group 2;

7, 8, 9, 10 are Group 3;

11, 12 are Group 4;

13(LED) is Group 5;

Output 13 can be used as LED neopixel output;

## Battery Monitoring

The board has two internal voltage sensors and two current sensors.
The voltage sensors can handle up to 6S LiPo batteries.

## Compass

The AET-H743-Basic has no built-in compass, so if needed, you should use an external compass.

## Analog cameras

The AET-H743-Basic supports up to 2 cameras, connected to pin CAM1 and CAM2. You can select the video signal to VTX from camera by an RC channel. Set the parameters below:

- RELAY2_FUNCTION = 1
- RELAY_PIN2 = 82
- RC8_OPTION = 34

## 9V switch

The 9Vsw power supply can be controlled by an RC channel. Set the parameters below:

- RELAY1_FUNCTION = 1
- RELAY_PIN = 81
- RC7_OPTION = 28

## Bluetooth

The AET-H743-Basic support both legacy bluetooth SPP and BLE serial. The bluetooth uses UART7 as serial port. Search for `AET-H743-SPP` or `AET-H743-BLE` to connect.

Note: you should connect a battery to the board so the bluetooth module can work.
49 changes: 49 additions & 0 deletions libraries/AP_HAL_ChibiOS/hwdef/AET-H743-Basic/hwdef-bl.dat
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
# hw definition file for processing by chibios_pins.py
# for AET H743-Basic bootloader

# MCU class and specific type
MCU STM32H7xx STM32H743xx

# board ID for firmware load
APJ_BOARD_ID AP_HW_AET-H743-Basic

# crystal frequency, setup to use external oscillator
OSCILLATOR_HZ 8000000

FLASH_SIZE_KB 2048

# bootloader starts at zero offset
FLASH_RESERVE_START_KB 0

# the location where the bootloader will put the firmware
# the H743 has 128k sectors
FLASH_BOOTLOADER_LOAD_KB 128


# order of UARTs (and USB). Allow bootloading on USB and telem1
SERIAL_ORDER OTG1 UART7

# UART7 (telem1)
PE7 UART7_RX UART7 NODMA
PE8 UART7_TX UART7 NODMA

# PA10 IO-debug-console
PA11 OTG_FS_DM OTG1
PA12 OTG_FS_DP OTG1

PA13 JTMS-SWDIO SWD
PA14 JTCK-SWCLK SWD

# make sure Vsw is on during bootloader
PD10 PINIO1 OUTPUT LOW

PE3 LED_BOOTLOADER OUTPUT LOW
define HAL_LED_ON 0

# Add CS pins to ensure they are high in bootloader
PC15 IMU1_CS CS
PB12 MAX7456_CS CS
PE11 IMU2_CS CS
PD4 EXT_CS1 CS
PE2 EXT_CS2 CS
PC13 IMU3_CS CS
Loading
Loading