Wow, that is awesome!!
I'm gonna try to look into pure C coding. And you're totally right that the Arduino IDE hides all that good stuff. I have made a small start, I did the uart initializations by writing directly to the registers. But i use this within the Arduino IDE.
Had work and stuff, so couldn't get a chance to test fully microtime with C. But i did test stopwatch, and still got varying time values. For the same 1000ms, i got a maximum of 2ms deviation, which isn't what i want. I feel I can be more accurate, until then I won't settle lol
I was looking into getting the database to add the microsecond timestamp and then I'll check the accuracy of that