ArduPlane, ArduCopter, ArduRover, ArduSub source
Go to file
Thomas Watson 5f5673b58f AP_HAL_ChibiOS: match thread stack pointer types to ChibiOS
`__main_thread_stack_base__` and `__main_thread_stack_end__` are
variables whose address is defined to be the corresponding part of the
stack. These are declared as `extern stkalign_t` in ChibiOS code, and
being declared as `extern uint32_t` in ArduPilot code creates a warning
at link time when using LTO. Correct the declaration to eliminate this
warning.

Also update `__main_stack_base__` and `__main_stack_end__` which don't
currently trigger this warning but serve similar purposes and so might
in the future.

The hardware expects an alignment of `stkalign_t` (which is 8 bytes) and
the linker script defines the variable values with this alignment as
well, so this is safe.

No code size or functional change.
2024-01-16 09:24:34 +11:00
.github CI: added Pixhawk6X-PPPGW to CI builds 2024-01-12 19:06:49 -08:00
.vscode vscode: Add extension for automatically picking process 2023-08-11 12:29:58 -07:00
AntennaTracker Tracker: stream BATTERY_STATUS by default 2024-01-07 13:04:03 -08:00
ArduCopter Copter: Throw mode check altitude within params 2024-01-09 11:29:00 +09:00
ArduPlane ArduPlane: make AHRS attitude member variables private 2024-01-14 12:47:47 +11:00
ArduSub ArduSub: make AHRS attitude member variables private 2024-01-14 12:47:47 +11:00
Blimp Blimp: correct compilation when fence compiled out 2024-01-15 09:39:41 +11:00
Rover Rover: make AHRS attitude member variables private 2024-01-14 12:47:47 +11:00
Tools AP_Periph: add missing AP_AHRS include 2024-01-15 20:41:58 +11:00
benchmarks
docs
libraries AP_HAL_ChibiOS: match thread stack pointer types to ChibiOS 2024-01-16 09:24:34 +11:00
modules lwip: update for PPP bridge support 2024-01-12 14:23:34 -08:00
tests
.dir-locals.el
.dockerignore Tools: fix junit report and add firmware version on report 2023-11-22 18:32:19 +11:00
.editorconfig .editorconfig: Update for more standards aware editors 2023-05-23 09:56:28 +10:00
.flake8 Tools: Improved flake8 speed, ignore, and exclude 2022-06-28 13:16:24 +10:00
.git-blame-ignore-revs .git-blame-ignore-revs: Ignore black format change 2023-11-25 13:49:05 -08:00
.gitattributes
.gitignore .ignore: remove junit xml files 2023-11-22 18:32:19 +11:00
.gitmodules lwip: remove ext/lwip and add as modules/lwip 2024-01-03 12:14:47 +11:00
.pre-commit-config.yaml .pre-commit: Add Tools/ros2 to list of black formatted files 2023-11-22 11:50:39 -08:00
.pydevproject
.valgrind-suppressions
.valgrindrc
BUILD.md ardupilot: Update BUILD.md 2023-10-27 14:17:21 +11:00
CODE_OF_CONDUCT.md
COPYING.txt
Dockerfile Docker: Added oportunity to set build flags (some envs) via docker build args 2023-11-18 12:19:26 +11:00
Doxyfile.in
Makefile
README.md README: fix GPL license URL 2023-08-16 16:27:17 +10:00
Vagrantfile Vagrant: add Mantic Minotaur to available VMs 2023-10-16 09:12:42 +11:00
pyproject.toml global: add skip-string-normalization to black config 2022-07-26 21:23:42 +10:00
waf waf: use python3 even if /usr/bin/python is v2 2023-05-06 10:09:04 +10:00
wscript waf: added --enable-ppp option 2024-01-03 12:14:47 +11:00

README.md

ArduPilot Project

Discord

Test Copter Test Plane Test Rover Test Sub Test Tracker

Test AP_Periph Test Chibios Test Linux SBC Test Replay

Test Unit Tests test size

Test Environment Setup

Cygwin Build Macos Build

Coverity Scan Build Status

Test Coverage

Autotest Status

ArduPilot is the most advanced, full-featured, and reliable open source autopilot software available. It has been under development since 2010 by a diverse team of professional engineers, computer scientists, and community contributors. Our autopilot software is capable of controlling almost any vehicle system imaginable, from conventional airplanes, quad planes, multi-rotors, and helicopters to rovers, boats, balance bots, and even submarines. It is continually being expanded to provide support for new emerging vehicle types.

The ArduPilot project is made up of:

User Support & Discussion Forums

Developer Information

Top Contributors

How To Get Involved

License

The ArduPilot project is licensed under the GNU General Public License, version 3.

Maintainers

ArduPilot is comprised of several parts, vehicles and boards. The list below contains the people that regularly contribute to the project and are responsible for reviewing patches on their specific area.