Hi guys. I'm finding myself in my Fault ISR, but I don't know how to diagnose why. Any guidance appreciated. Here is the context:
As some of you know, I am working on a project where I get data from a bno055 9-axis IMU via I2C and integrate it into position. It took me a while to figure out how to integrate the Bosch bno055 generic library into my project, but with this forum's help I figured it out. Afterwards, everything is/was going pretty well. I had a periodic timer repeating very 20 ms. Every time it ran out I went into my timer ISR, where I grabbed new data from the sensor and integrated it.
I moved my code over to an Event and Services framework written by my professor. This framework allows for the posting of events from different modules, and streamlines more complex code such as multiple state machines and hierarchical state machines. This framework was written to work with the tm4c123gxl microcomputer. I migrated my code over into it, still using a periodic timer interrupt to get my data. But my code started hanging with the ISR. I traced the hanging to within my get_acceleration function particularly the line where I read from my bno055.
A lot more experimentation happened and it turns out the problem isn't linked to my timer ISR, but I'm mysteriously hanging when I read the bno055 within my get_acceleration function. The weird thing is that I call that same function during my initialization routine and get through it just fine.
So when I follow the Keil debugger I get through my read and writes to the bno055 during bno055 initialization and even calling this get_acceleration function during my setup routine, but when I try to call the function later on I get into my Fault ISR. I just don't know why I'm going to my Fault ISR. Is there some sort of register that will give me a bit more information on the fault so I can start figuring out what is happening? Thanks.

