Skip to content

boards: Add board support for Arkin Labs A2M6X board#25595

Open
ArkinLabs1Support wants to merge 1 commit intoPX4:mainfrom
ArkinLabs1Support:board_support/a2m6x
Open

boards: Add board support for Arkin Labs A2M6X board#25595
ArkinLabs1Support wants to merge 1 commit intoPX4:mainfrom
ArkinLabs1Support:board_support/a2m6x

Conversation

@ArkinLabs1Support
Copy link

This commit introduces initial board support for the A2M6X flight controller developed by Arkin Labs, based on the PX4-V6X standard. The Product ID and Vendor ID have been configured as follows:

CONFIG_CDCACM_PRODUCTID set to 0xAFC6

CONFIG_CDCACM_VENDORID set to 0xA321

For more information, visit our website: https://www.arkinlabs.in/aeromind-6x

Changelog

Feature: Board Support  
- Added support for the new A2M6X flight controller by Arkin Labs  
- Developed following the Pixhawk-6X framework and PX4-V6X standards  
- Documentation will be added in upcoming commits

@ArkinLabs1Support ArkinLabs1Support marked this pull request as draft September 25, 2025 05:22
@ArkinLabs1Support ArkinLabs1Support marked this pull request as ready for review September 26, 2025 05:47
@github-actions github-actions bot added the stale label Dec 26, 2025
@github-actions
Copy link

This pull request has been automatically closed due to 120 days of inactivity. If you would like to continue, please feel free to reopen it or submit a new PR.

@github-actions github-actions bot closed this Jan 25, 2026
@hamishwillee
Copy link
Contributor

hamishwillee commented Jan 29, 2026

@mrpollo This was not even reviewed before being closed. Can we assign it to someone?

@hamishwillee hamishwillee reopened this Jan 29, 2026
@github-actions github-actions bot removed the stale label Jan 30, 2026
This commit introduces initial board support for the A2M6X flight controller developed by Arkin Labs, based on the PX4-V6X standard.

Signed-off-by: Sai Vishnu Balaji <sai.vishnu@arkinlabs.in>
@mrpollo mrpollo force-pushed the board_support/a2m6x branch from 6177f5a to f31e1c4 Compare February 3, 2026 23:06
@mrpollo
Copy link
Contributor

mrpollo commented Feb 3, 2026

I'll take care of it, I just rebased to check CI

@mrpollo mrpollo self-requested a review February 3, 2026 23:06
@hamishwillee
Copy link
Contributor

Thanks very much. I guess we ask for docs as well?

Copy link
Contributor

@mrpollo mrpollo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @ArkinLabs1Support,

First, apologies for the long delay in reviewing this PR - it fell through the cracks and we appreciate your patience.

A few items to address:

1. Skynode/Auterion References (non-blocking)

The following files contain Skynode-specific code copied from fmu-v6x. These are harmless (the ver hwbasecmp 009 010 011 checks will never match on A2M6X), but you may want to remove them for cleanliness:

  • cmake/upload.cmake - Skynode upload targets (lines 52-64)
  • init/rc.board_defaults - Skynode UXRCE_DDS config (lines 228-232)
  • init/rc.board_mavlink - Skynode TEL2 mavlink config (lines 247-253)

2. Sensor Configuration Verification

Based on your product page, the sensor set appears to be:

  • 3x ICM45686 IMU
  • 2x ICP20100 barometer
  • 1x RM3100 magnetometer

Can you confirm this matches rc.board_sensors? Also:

  • What are the IMU rotation values (-R 0, -R 0, -R 8)? Are these verified against your board orientation?
  • The barometers are on I2C buses 2 and 4 - is this correct for your hardware?

3. Documentation

Please add documentation for this board in docs/en/ within this repo. You can use the Pixhawk 6X docs as a reference: https://docs.px4.io/main/en/flight_controller/pixhawk6x

@mrpollo
Copy link
Contributor

mrpollo commented Feb 4, 2026

4. CI Flash Overflow

The build is failing due to flash overflow:

region 'FLASH' overflowed by 33032 bytes

You'll need to reduce the firmware size by ~32KB. Some suggestions:

  1. Remove unused IMU drivers - Your default.px4board includes many IMU drivers you don't need. Since your hardware only has ICM45686, consider removing:

    • CONFIG_DRIVERS_IMU_BOSCH_BMI088
    • CONFIG_DRIVERS_IMU_INVENSENSE_ICM20602
    • CONFIG_DRIVERS_IMU_INVENSENSE_ICM20649
    • CONFIG_DRIVERS_IMU_INVENSENSE_ICM20948
    • CONFIG_DRIVERS_IMU_INVENSENSE_ICM42670P
    • CONFIG_DRIVERS_IMU_INVENSENSE_ICM42688P
    • CONFIG_DRIVERS_IMU_INVENSENSE_IIM42652
    • CONFIG_DRIVERS_IMU_ANALOG_DEVICES_ADIS16470
  2. Remove unused barometer driver - You have CONFIG_DRIVERS_BAROMETER_MS5611=y but your hardware uses ICP20100. Remove MS5611.

  3. Remove Auterion-specific driver - CONFIG_DRIVERS_POWER_MONITOR_PM_SELECTOR_AUTERION=y is likely not needed for your board.

  4. Consider if you need all INS drivers - CONFIG_COMMON_INS=y adds several INS drivers that may not be necessary.

For reference, compare with boards/px4/fmu-v6x/default.px4board which is more selective about included drivers.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants