Project: SECU-3
Creation date: 29/11/2010
By: Alexey A. Shabelnikov
--------------------------------------------------------------------------------


What to do in relation to SECU-3 firmware:
[] - means already fixed/implemented

1. Move code related to resetting low priority errors from secu-3.c to 
   ce_errors.c

2. Implement inginition cycles counter which can be used in the system. Maybe it
   is good idea to use callback function.

3. Reimplement timers (vstimer.c). Use callback mechanism. Leave in the 10 ms 
   interrupt routine only one counter.

4. Callback functions for "permanent" and "each cycle" execution. In this case,
   main will be as caller. 

5. To check and fix. ECU error related to detonation can leave after engine 
   stopped.

[6.] Implement ignition cut-off when RPM reaches unallowed value. Value can be
   set from mamager.

[7.] Run time edit of ignition table (table(s) are stored in RAM)

8. Turn on cooling fan only after engine started (do not waste accumulator's
   energy in critical - start mode)

[9.] Implement special mode which turns off advance angle (=0), mode can be
   activated/deactivated from SECU-3 Manager

10.Cooling fan's PWM. As the adjustment is not smooth, then after changing 
   the PWM duty, it is necessary to sustain a pause of 5 seconds, until the next
   possible change.

[11.]ckps.c Reenable TIMER_COMPA interrupt inside process_ckps_cogs() function. It will
   increase accuracy of ignition at some critical moments of time.

12. Flow of outgoing data packets can be turned on/off depending on default value
    (flag) specified in parameters. If data flow is turned off, it can be turned on
    after receiving of any packet with CHANGEMODE type.
    This feature will free some processor's resources and increase quality of
    system.

