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

Updated platform.md with KBuild vs persistent param. #992

Merged
merged 1 commit into from
Mar 10, 2022
Merged
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
10 changes: 9 additions & 1 deletion docs/userguides/platform.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,10 +26,18 @@ Each platform supports one or more device types. The device type is identified i
to fit the hardware. The Crazyflie 2.0 and Crazyflie 2.1 are for instance two device types handled by the `cf2` platform,
they will configure the firmware to use different drivers for the IMU based on the device type.

## Persistent paramters
While KBuild is ment for configuring the compile time specific functionality selections the
[persistent paramters](/docs/userguides/logparam.md#persistent-parameters) are there to configure it in run time.
And this is the rule of thumb. If it is about a configuration, such as PID tuning or low voltage level, it should
be a persistent parameter. If it is a functionality it should be a compile time KBuild define. It is not a sharp cut,
do what is best and easiest for the user.

## Default values

There is functionality to set default values for variables based on the platform and this is for instance used to set
different default tuning values for the (small) Crazyflie 2.1 and the (larger) Crazyflie Bolt.
different default tuning values for the (small) Crazyflie 2.1 and the (larger) Crazyflie Bolt. The default values are
located in e.g. `src/platform/interface/platform_default_cf2.h` for the Crazyflie 2.1.

## Implementation

Expand Down