You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Mar 17, 2021. It is now read-only.
As part of an ongoing effort to structure this project in well defined layers I'd like to consider renaming the top level platforms directory. This came up during the dev call yesterday to remove potential confusion with src/platforms and better establish what these layers are, or at least should be.
Next I'd like to establish src/platforms (renamed -> src/platform) as the "PX4 platform" layer.
Highlevel PX4 layers
PX4 Modules (src/modules)
uORB pub/sub and parameters
controllers, estimators, state machines, mavlink, etc
PX4 Drivers (src/drivers)
modules that access hardware
sensors, outputs, etc
platform agnostic drivers
PX4 Libraries (src/lib)
used by modules and drivers
have access to uORB, parameters, etc
non-px4 libraries also exist that aren't allowed to use anything in the px4 platform (px4_add_library vs add_library)
PX4 platform layer (src/platform)
uORB, parameters, hrt, work queue, task creation, px4 logging
defines everything in the PX4 platform layer, and implements all generic code. Depends on a significant amount of OS specific code (does it make sense for that to live under the top level os/)?
PX4 OS support layer (os/)
nuttx, posix (probably linux separately), qurt
contains non-px4 drivers
should not use anything in the PX4 platform layer (parameters, logging, hrt, etc).
The original intention was to relayer everything such that the OS specific layer could be cleanly extracted into a separate repository. An alternative would be merging the OS support layer with the platform layer.
The text was updated successfully, but these errors were encountered:
hamishwillee
changed the title
Document PX4 layers for 1.0.0
Document PX4 layers for 1.9.0
Jan 31, 2019
Sign up for freeto subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Put under here: Concepts · PX4 Developer Guide
Discussion on this is here: PX4/PX4-Autopilot#11232 (comment) and PX4/PX4-Autopilot#11232 (comment)
Overview from Firmware 11232
As part of an ongoing effort to structure this project in well defined layers I'd like to consider renaming the top level
platforms
directory. This came up during the dev call yesterday to remove potential confusion with src/platforms and better establish what these layers are, or at least should be.Next I'd like to establish
src/platforms
(renamed -> src/platform) as the "PX4 platform" layer.Highlevel PX4 layers
The original intention was to relayer everything such that the OS specific layer could be cleanly extracted into a separate repository. An alternative would be merging the OS support layer with the platform layer.
The text was updated successfully, but these errors were encountered: