Refactor the Makefile into pieces. This commit inspired by AncientGeek, my hatred...
[freeems-vanilla.git] / src / main / doxy / tuneSwitching.h
blob711c3f67745b6eb6218de0b58c179cbec471a566
1 /* FreeEMS - the open source engine management system
3 * Copyright 2010 Fred Cooke
5 * This file is part of the FreeEMS project.
7 * FreeEMS software is free software: you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation, either version 3 of the License, or
10 * (at your option) any later version.
12 * FreeEMS software is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
17 * You should have received a copy of the GNU General Public License
18 * along with any FreeEMS software. If not, see http://www.gnu.org/licenses/
20 * We ask that if you make any changes to this file you email them upstream to
21 * us at admin(at)diyefi(dot)org or, even better, fork the code on github.com!
23 * Thank you for choosing FreeEMS to run your engine!
26 /** @page tuneSwitching Tune Switching
28 * This feature is similar to one known as "table switching" that you may
29 * have used before on other systems except that instead of just switching
30 * the tables, the entire tune is switched. The only exceptions to this are
31 * physical constants that there is only one available copy of.
33 * @todo TODO insert discussion about various uses of tune switching here.
35 * The primary copy of all switchable items is enabled by default and is
36 * normally what you want to adjust while tuning the engine. It is also what is
37 * in use when the tune switching mechanism is enabled and not engaged. The
38 * secondary copy of a given switchable item is enabled when the tune switching
39 * mechanism is enabled and engaged. If tune switching is not enabled then the
40 * secondary copy is never used.
42 * @b Warning:
44 * Although this boils down to paranoia, some precautions are best taken when
45 * tuning your vehicle with FreeEMS. Because there are always two copies of all
46 * settings and the code has the ability to switch between them you you should
47 * always configure the secondary copy explicitly.
49 * If you are not using the tune switching feature it is wise to configure all
50 * values in the secondary set to be exactly the same as what is in the primary
51 * set. This way if you have tune switching turned on by accident and the input
52 * pin is floating you will not get erratic engine behaviour.
54 * @b Developers:
56 * When adding things to the set of switchable data please ensure you insert
57 * appropriate default values in both the primary and secondary copies.
60 /** @file
62 * @ingroup doxygenDocFiles
63 * @brief Doxygen Tune Switching page definition