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

(WIP) rebase of CxPilot5.1.1 on Ardupilot 4.4.4 #121

Closed

Conversation

loki077
Copy link
Contributor

@loki077 loki077 commented Mar 22, 2024

Still need testing and cleaning/squashing of Commits.

Notes:
AP_COMPASS_QMC5883P_ENABLED 1
HAL_EFI_ENABLE changeed to individual EFI

**Cherry pick later
CI: Carbonix disable features not required
CI: disable test-scripting
workflow: Deleted test_coverage CI
gitmodules: changed libcanard to Carbonix Fork
module: libcanard checkout in Cx_dev branch of Carbonix fork

CAn servo implementation need to be verified
check ESC and ARM timeout

loki077 and others added 30 commits March 21, 2024 21:18
This is an ADC extender based on I2C which is used to read the current and voltage. Enable AD7091R5 in config.h which was reserved previously

SW-131
Update parameters and make current false

SW-131
this neatens up some calling code
backport from 4.4

SW-131
ESC_Timeout: Fixes a periph continuing to drive an ESC to an output when the esc_rawcommand packets are lost

ARM Timeout: is changed to 2000 as it is now only scanning ARM signal which is arriving at 1Hz

Parameters added :
ESC timeout: Timeout defaults to 200ms. Timeout can be disabled by setting parameter to 0. Timeout should be configured to be able to handle at small number of missed packets.

ARM _Monitoring: dropped to be also cleared at ESC signal received

SW-131
this allows for testing of a fwd motor or control surfaces while not
allowing for VTOL ESCs to run. This makes CAN actuators behave the
same as direct PWM actuators

SW-131
Replacing ardupilot/ardupilot path to carbopilot_V2/carbopilot_V2

SW-131
Create a custom board based out of CubeOrange
Add default parm , hardware def and lua script
kept only default #defines
Added 9 different boards which are based on CarbonixF405 and have default. parm
loki077 and others added 27 commits March 21, 2024 22:56
This flag was never getting set to true

OV3-1027
 - add 'VOl-' for Volanti-LTail
 - removed 'COMPASS_ENABLE 1 @readonly' on tail CPNs
EK3_ENABLE 1 @readonly
BRD_SAFETYOPTION 3 @readonly
BATT2_TYPE 28 @readonly
BATT3_TYPE 28 @readonly

SW-42
Making changes to fix the CarboParameter CI pass for below issues

Parameter 'BATT2_CURR_PIN' has an invalid value: 51 : [-1, 3, 4, 14, 15, 17, 101]
Parameter 'BATT2_VOLT_PIN' has an invalid value: 50 : [-1, 2, 5, 13, 14, 16, 100]
Parameter 'BATT3_CURR_PIN' has an invalid value: 52 : [-1, 3, 4, 14, 15, 17, 101]
Parameter 'BATT3_VOLT_PIN' has an invalid value: 50 : [-1, 2, 5, 13, 14, 16, 100]
Parameter 'CRASH_DETECT' has an invalid value: 1 : [0]
Parameter 'Q_M_SPIN_ARM' has an invalid value: 0.07 : [0.0, 0.1, 0.2]

SW-45
This script will compile boards related to carbonix passed in command line.
Mainly build to be used by CI for compare no code change

SW-45
This is been handled now in AP_CarbonixCustom.h

SW-51

SW-131
In this commit, a preprocessor directive has been added to the AP_FWVersionDefine.h file. This directive checks if the CARBOPILOT macro is defined. If it is, the AP_CUSTOM_FIRMWARE_STRING macro is defined as mentiones. This allows for custom firmware versioning when building the CarboPilot project.

Going forward we will modify the Custom Firmware name at only one location.

And to use it need to compile the code with the #define eg below:
./waf configure --board CarbonixCubeOrange --define=CARBOPILOT=1

SW-51
Carbonix_board_build.sh name changed to build_no_clean.sh for clarity of the purpose of file.

Also Removed the bootloader and board config as that triggers sub module compile which is not deterministic and causes a difference in build.
 
SW-46
This will compile both base and head branch so to compare any code changes for carbonix board.
To init this you need to add label  CX_NO_CODE_CHANG

SW-46
 - CHT2 and EGT2
 - Remove CI build error
1. copy Release Notes to the main build folder and every module build folders
   - echo - to list all directories
   - xargs - execute command lines from standard input
2. build_output.zip only contains bin folder. This was decided to save space
1. Update uavcan.equipment.power.CircuitStatus
   - Voltage, Current and Error_flags
2. update uavcan.equipment.device.Temperature
   - Temperature and Error_flags

SW-131
 - ThM added to help understand the engine logs better
 - Updated the field names to keep the total length 64-characters long.
This commit introduces Lua bindings for the following methods:

- ESC- `get_last_telem_data_ms`
- MotorMatrix `get_lost_motor`
- MotorMatrix `get_thrust_boost`
- EFI `get_last_update_ms`

Note:
- For get_last_telem_data_ms - CPN reset is reported. But ESC disconnected with CPN is not reported. This needs to be looked into

SW-131
this limits the amount that rate gains can reduce from the original
values in a quicktune. Large reductions in rate gains can be
incorrectly triggered by a frame resonance or gust of wind which can
result in gains that are dangerously low, which can trigger an angle P
oscillation

SW-116

SW-131
Cherry-pick source:
 - AP_ICEngine: don't allow engine run with safety on : e070848
 - AP_EFI: fixed ignition while disarmed : 2956810

Cherry-pick was not sufficient, since the code has changed since 4.3.25. This code is tested after changes.
Added a parameter CRAN_DIR where 0 if forward and 1 or greater is reverse direction for Engine Cranking.

As all our Engine our forward direction that is our default state.

SW-111
@loki077 loki077 closed this May 16, 2024
@robertlong13 robertlong13 deleted the feature/SW-131-cx-pilot-6-0-0-rebase-to-ardupilot-4-4-4 branch June 17, 2024 07:10
@robertlong13 robertlong13 restored the feature/SW-131-cx-pilot-6-0-0-rebase-to-ardupilot-4-4-4 branch June 17, 2024 07:10
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.

7 participants