-
Notifications
You must be signed in to change notification settings - Fork 203
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
Time Services need cleanup relative to requirements #302
Comments
Imported from trac issue 271. Created by jhageman on 2019-04-01T09:44:50, last modified: 2019-05-23T16:43:54 |
Suggestions - Explicitly define TAT pulse and 1Hz pulse, the system should handle various configurations (any combination of 'virtual/internal' and external/API, synced or not) TAT pulse source selection (SetSource) should be generalized to 'virtual' or passed to PSP, or get triggered via API (generalize implementation of cTIME2010 which currently just does PRIMARY/SECONDARY) Really TIME ifdefs need to be removed, and TIME should just do what's requested when requested. Note #518 will fix some of the requirements but not all, so revisit after that update. |
See cTIME2013 - need to simplify configuration to adjust SCTF when requested (regardless of mode). |
SetSourceCmd - not well defined requirement or implementation. Suggest updates per the 1Hz comment above (sort of tied 1Hz cycle to Tone but needs work). |
CFE_TIME_Locaal1HzISR related design also needs cleanup and implementation is not consistent with CFE_TIME_Tone1HzISR. Wouldn't expect an "ISR" to be exposed in an API, Tone1HzISR has an ExternalTone API wrapper, etc. See also #551 which only fixed the duplicate prototype, but bigger issues should be addressed as part of refactor. |
Also noted in code review, inconsistent parameter names used in the APIs (Time1/2, TimeA/B). Improve consistency. |
Also noted in code review, consider merge of external events (CFE_TIME_ExternalMET, CFE_TIME_ExternalGPS, CFE_TIME_ExternalTime). Although might be simpler to just include all three and support selection (internal/virtual/external MET, OS/GPS/Time (and relation to tone), etc) instead of |
This first point is addressed here (excl. |
This is addressed here: |
Per CCB on 3/27/19, Time Services goes way beyond it's requirements. Need to re-evaluate configuration options and reduce mission specific code.
As part of the cleanup, factor out duplicate code. Specifically referenced at code review in command handling.
CFE_TIME_SetTimeCmd
,CFE_TIME_SetMETCmd
,CFE_TIME_SetStcfCmd
, andCFE_TIME_SetLeapSeconds
are all basically the same logic, etc.CFE_TIME_ToneSendGPS
andCFE_TIME_ToneSendTime
are basically the same logic, refactorCFE_TIME_RegisterSynchCallback
andCFE_TIME_UnregisterSynchCallback
#1536CFE_TIME_GetReference
#1535cFE/modules/time/fsw/src/cfe_time_verify.h
Lines 43 to 51 in 84ba9a9
The text was updated successfully, but these errors were encountered: