Artemis Global Tracker MbedOS hardfault after 1st data transmission w/ defined user values

Hi @crpixa (Chase?),

Ah, sorry. I thought this issue was linked to having multiple sensors connected. I didn’t realize that it is actually linked to the sleep/wake functionality.

This is bringing back many memories. It is a long time since I wrote the Global Tracker examples, and also a long time since I had to update the OpenLog Artemis sleep/wake code after we updated the Apollo3 core.

Sleep/wake works on OpenLog Artemis - using version 2.2.1 of the SparkFun Apollo3 core. But the core needs to be patched in a couple of places to make it work correctly. The OpenLog Artemis build instructions are here: https://github.com/sparkfun/OpenLog_Art … _BINARY.md . And the patches are described here: https://github.com/sparkfun/OpenLog_Art … ollo3-core . The SPI patch probably doesn’t apply in your case with the AGT. But the UART Power patch is important - it prevents the badness caused by the Iridium modem pulling the UART RX pin low.

Then there is the sleep/wake code itself. The sleep/wake functions are here: https://github.com/sparkfun/OpenLog_Art … #L250-L567 . Not all of that applies to the AGT, but there are some critical bits, like: https://github.com/sparkfun/OpenLog_Art … r.ino#L291 , https://github.com/sparkfun/OpenLog_Art … #L314-L324 , https://github.com/sparkfun/OpenLog_Art … #L341-L343 , https://github.com/sparkfun/OpenLog_Art … #L525-L527 .

So, where does that leave us with the AGT examples? I can see now that the examples include some of the corrections for Apollo3 2.1+, but not all. For example, in Example16, I have commented the line that disables PERIPH_IOM1 (agtWire). But I have not included the code to properly restore the SCL and SDA pins during wake.

Unfortunately, I have a ton of other work I need to be getting on with. I don’t have time right now to properly update and test the examples. Please accept my apologies, but I am hoping you can work your way through this by updating to 2.2.1, patching the core, and modifying the sleep/ wake code so it matches the OLA?

Please feel free to open an issue for this in the SparkFun AGT GitHub repo: https://github.com/sparkfun/SparkFun_Ar … ker/issues . That way we can track it better. It supersedes the original SparkfunX repo.

Very best wishes - and apologies again for the inconvenience,

Paul