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 CSKY405 #6014

Merged
merged 1 commit into from
Nov 13, 2024
Merged
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
148 changes: 148 additions & 0 deletions common/source/docs/common-CSKYF405.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,148 @@
.. _common-CSKYF405:

=======
CSKY405
=======

.. image:: ../../../images/CSKY405.png
:target: ../_images/CSKY405.png
:width: 450px

.. note::

Due to flash memory limitations, this board does not include all ArduPilot features.
See :ref:`Firmware Limitations <common-limited_firmware>` for details.

Specifications
==============

- **Processor**

- STM32F405RGT6 ARM (168MHz)
- AT7456E OSD


- **Sensors**

- BMI088 IMU (accel, gyro)
- BMP390 barometer
- Voltage & 90A(215A PEak) current sensor


- **Power**

- 2S-6S DC input power
- 5V, 2.5A BEC for servos
- 12V, 2A BEC for video


- **Interfaces**

- 6x UARTS
- 10x PWM outputs
- 1x RC input with inverter for SBUS/PPM
- I2C port for external compass and airspeed sensor
- Type-C USB port
- SD Card Slot

Where to Buy
============
`CSKY <https://csky.space/products>`__

Typical Wiring Diagram
======================

.. image:: ../../../images/CSKY405_wiring.png
:target: ../_images/CSKY405_wiring.png
:width: 450px

Default UART order
==================

- SERIAL0 = console = USB
- SERIAL1 = UART4 (MAVLink2)
- SERIAL2 = USART1 (MAVLink2, DMA capable)
- SERIAL3 = UART5 (GPS)
- SERIAL4 = USART3 (GPS, TX3 DMA capable)
- SERIAL5 = USART6 ((User, TX3 DMA capable)
- SERIAL6 = USART2 (RCinput on RX2, to use as normal UART input use :ref:`BRD_ALT_CONFIG<BRD_ALT_CONFIG>` = 1)

Serial protocols shown are defaults, but can be adjusted to personal preferences.

OSD Support
===========
The CSKY405 supports using its internal OSD using OSD_TYPE 1 (MAX7456 driver). External OSD support such as DJI or DisplayPort can be supported using USART6 or any other free UART. See :ref:`common-msp-osd-overview-4.2` for more info.

PWM Outputs
===========

The CSKY405 supports up to 10 PWM outputs. All outputs support DShot.

The PWM is in 5 groups:

- PWM 1 in group1
- PWM 2 in group2
- PWM 3,4 in group3
- PWM 5,6,10 in group4
- PWM 7 in group5
- PWM 8,9 in group6

RC Input
========

RC input is configured on the RX2 pin. It supports all single wire RC
protocols except bi-directional serial protocols such as CRSF, ELRS, etc. Instead, these devices can be connected using both TX2 and RX2 if if :ref:`BRD_ALT_CONFIG<BRD_ALT_CONFIG>` = 1 and :ref:`SERIAL6_PROTOCOL<SERIAL6_PROTOCOL>` set to "23".

- PPM is not supported.

- DSM/SRXL connects to the RX2 pin.

- FPort requires connection to TX2 and RX2 via a bi-directional inverter. See :ref:`common-FPort-receivers`.

- CRSF also requires a TX2 connection, in addition to RX2, and automatically provides telemetry. Set :ref:`SERIAL6_PROTOCOL<SERIAL6_PROTOCOL>` to "23"

- SRXL2 requires a connection to TX2 and automatically provides telemetry. Set :ref:`SERIAL6_OPTIONS<SERIAL6_OPTIONS>` to "4" and :ref:`SERIAL6_PROTOCOL<SERIAL6_PROTOCOL>` set "23".

Battery Monitor Configuration
=============================
These settings are set as defaults when the firmware is loaded (except :ref:`BATT_AMP_PERVLT<BATT_AMP_PERVLT>` which needs to be changed from the default value). However, if they are ever lost, you can manually set the parameters:

Enimages/CSKY405_wiring.pngable Battery monitor.

- :ref:`BATT_MONITOR<BATT_MONITOR>` =4

Then reboot.

- :ref:`BATT_VOLT_PIN<BATT_VOLT_PIN>` 14
- :ref:`BATT_CURR_PIN<BATT_CURR_PIN>` 7
- :ref:`BATT_VOLT_MULT<BATT_VOLT_MULT>` 21
- :ref:`BATT_AMP_PERVLT<BATT_AMP_PERVLT>` 10.35

VTX power control
=================

GPIO 84 controls the VTX BEC output to pins marked "12V". Setting this GPIO high using an :ref:`common-auxiliary-functions` or :ref:`common-relay` removes voltage supply to pins.

Connecting a GPS/Compass module
===============================

This board does not include a GPS or compass so an :ref:`external GPS/compass <common-positioning-landing-page>` should be connected as shown below in order for autonomous modes to function.

Firmware
========

Firmware for this board can be found `here <https://firmware.ardupilot.org>`_ in sub-folders labeled
"CSKYF405".

Loading Firmware
================
Firmware for these boards can be found at https://firmware.ardupilot.org in sub-folders labeled CSKY405.

Initial firmware load can be done with DFU by plugging in USB with the
boot button pressed. Then you should load the "CSKY405_bl.hex"
firmware, using your favorite DFU loading tool.

Subsequently, you can update firmware with Mission Planner.

[copywiki destination="plane,copter,rover,blimp"]

1 change: 1 addition & 0 deletions common/source/docs/common-autopilots.rst
Original file line number Diff line number Diff line change
Expand Up @@ -91,6 +91,7 @@ Closed Hardware
BetaFPV F4 1S 12A AIO V3 <common-betafpvf405>
brainFPV RADIX2 HD <common-radix2hd>
CBUnmanned H743 Stamp <common-StampH743>
CSKY405 <common-CSKYF405>
Emlid NAVIO2 (Linux) <common-navio2-overview>
Flywoo F405 Pro <common-flywoof405pro>
Flywoo F405HD 1-2S <common-flywoof405hd>
Expand Down
Binary file added images/CSKY405.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/CSKY405_wiring.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.