Max GPS frequency with other QWIIC data on Artemis

Hi,

I use Artemis with NEO-M9N Qwiic GPS at a 25 Hz required frequency (using a special firmware from you).

The record appears to be closed to that, at 22Hz.

As I need to record other Qwiic data at higher rate, I tried to record internal IMU data at 100 Hz without and with this GPS.

Then, when recording GPS also, the record appears limited approximately to 13Hz as if the GPS imposed the frequency (the IMU data are merged with GPS data).

Could you tell me if it is possible to separate data messages in order to get other Qwiic data at higher frequency that the GPS this one or other ?

Regards

Christian

Hi Christian,

Unfortunately it is not possible to separate the messages.

Please check you have the “autoPVT” option enabled in the GNSS device configuration. That will allow the OLA to log the GNSS data as fast as possible - even if some readings are ‘stale’.

Best wishes,

Paul

Hi Paul,

Thank you for your message.

In fact, with autoPVT enable, the total frequency record increases to 33Hz with GPS fresh data at full frequency of 25Hz.

So I am going to buy two MLX90393 in order to see how is the frequency with GPS and two MLX90393.

As my need is still 50Hz for each MLX90393, could you tell me if it would be better with Logomatic v2 …

… probably using SPI bus in place of QWIIC / I2C bus ? …

… and if the programming would still be “natural” ?

Regards

Christian

Hi Christian,

I assume you know the MLX90393 is only a magnetometer - not a full IMU? And it is not supported by the OLA…

The Logomatic v2 is a very old product: > 9 years. I have never used it. Please proceed with caution. It may be difficult to compile new code for it. A lot of things have changed since then.

My advice would be to start with the ESP32 Thing Plus C, which has a microSD card slot built-in. There are GNSS data logging examples already written for that board: https://github.com/sparkfun/SparkFun_u- … ta_Logging

Try I2C to begin with. If you need extra speed then you can change to SPI. The NEO and the GNSS library support both.

I would probably recommend the MMC5983MA magnetometer, but only because I have tested it at its full 1kHz sample rate. That was using SPI and the interrupt pin for “end of conversion”: https://github.com/sparkfun/SparkFun_MM … rement.ino

You will need to structure your code carefully, especially if you have the microSD, NEO and two Mags all on the same SPI bus. Writing the data to microSD could be a “bottleneck”. You may need to use interrupts to read and store the Mag data, store it to buffer, interleave the GNSS data, then have the loop write the data from the buffer to the SD card.

Good luck - sounds like a fun project!

Paul

Thank you for your widely developed answer

In fact, after trying to measure angles with IMU, it appears that low cost IMU are too sensitives to orientation toward earth’s magnetic field.

So I want now to measure two physical angles, on a boat so waterproof solution are required. For that, magnetometer seems a good solution.

I am a bit disappointed that magnetometer are not supported by the OLA.

The MMC5983MA magnetometer appears to be interesting except that it has only one QWIIC connector so, difficult to use in a bus.

Concerning the ESP32 and the numerous interesting examples, I have a small difficulty as, except the ESP 32 motion, I have not found a ESP32 with SD card : could you give me the exact reference ?

I have also understood that SPI programming is more difficult.

So, it is clear that things become difficult …

Christian

Hi Christian,

https://www.sparkfun.com/products/19034

https://www.sparkfun.com/products/20168 - the microSD socket is on the bottom

Best,

Paul

Super for both ref

The mag 19034 looks fantastic : 18 bits at 1000Hz !

I progress with you

Thanks

Christian