-
Notifications
You must be signed in to change notification settings - Fork 1
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
Main Loop Monitoring - Debug help #17
Comments
I added header file that stores global variable LAST_STARTED_MODULE Included that header to all files. For every function writen I MANUALLY set up unique index corresponding to this function. When any function withing the module starts - it sets LAST_STARTED_MODULE to corresponding index example : index 11 means that it is l4_thruster_main() This way when HARD FAULT OCCURES global variable with index of last started function will be saved and visible for debug EXAMPLE : The goal of implementing this watchdog is to investigate what causes failure when executing sequences in feature/thruster-fire branch (ISSUE-25) #25 Current issue : After "stage 6" SOMETIMES failure occures. |
I discovered that failure is caused by thr_execute_sequence() function within l4_thruster.c Thus I added additional "breakpoints" to find out where exactly error is occuring I launched sequence with "8 0" command again and waited for failure. First attempt resulted in no error occuring (sometimes work, sometimes not) After second launch of sequence thus Error occured by executing function at specific pointer (probably wrong pointer ?) @RobertK66 Please look through this procces of investigation |
Ok, lets keep this as a 'feature issue' to implement the 'current running module for everybody in a basic mainloop implementation. |
I think I had one instance of 'Hardfault' triggered by the current calculate Runtime method in the mainloop -> |
Meassure runtime per module.
include 'current running' module to monitor structure
make and persist events absout treshholds violations
make 'module enabled/disabled' possible. Switch on/off (with 'reInit' or without !? switch off with DeInit !?)
The text was updated successfully, but these errors were encountered: