Hi all,
I am a lucky owner of 12 Audiomoth dev with connected GPS modules, and encountered a strange issue: Sometimes a device will start recording 2 seconds earlier than others. Obviously, when trying to locate bird sounds via multilateration, this is an annoying issue. Everything between the Moths on a deployment is identical, all share the same hardware and programming (an external mic, a 18650 lithium battery as power supply and obviously a connected GPS module).
And yet, within a deployment, one or two seemingly random units will consistently start exactly 2s earlier than all others (ie all recordings from that unit in the deployment are 2s off). The time difference is exactly 2s, basically to the ms (as far as I can tell). So the GPS time setting apparently works in principle, but the recording is still offset by 2s. The filename shows a wrong starting time, ie when it was supposed to start, not when it really did.
The affected Moths change apparently randomly between deployments, therefore it is not connected to individual Audiomoths. I did not test if this failure is related to individual GPS modules - I will do this as soon as I can, but I doubt it somehow (GPS is all about time, so a 2s difference is worlds apart).
I rather suspect some kind of software bug, 1) either when setting the clock during the GPS phase prior to the recording, or 2) while programming the recording times for the devices on the PC.
Has anyone had a similar experience?
There is an obvious workaround - to take out exactly 2s from each of the .wavs of an affected unit - but that is not really the way it is supposed to work...
A pic is attached, showing the audios of the 12 moths next to one another on a table: it is easy to spot the two moths that suffer from the 2s-offset-bug.
If the second one doesn't update try the firmware below. Set the time with the Time App, switch to CUSTOM or DEFAULT with an SD card inserted, and it will power up the GPS and log all the messages. It would be interesting to catch one of them actually updating.
https://www.dropbox.com/s/1z62wr64j6f40y3/AudioMoth_GPS_Logger_1_0_2.bin?dl=0
Let us know if you see the same thing again. Particularly if it occurs in one that has previously been correct.
I switched the two Moths & GPS units on and off a number of times while in the open and removed the battery in between. That way the GPS turned on each time to set the clock. One of the two units has now corrected itself, the second should not take much longer. No need for an extra firmware.
Thank you for the super-fast help to track down this issue. Fantastic service.
And by the way: is there a place to suggest features for the Audiomoth-config app?
Yep, these are the prototype boards that use a slightly different module from the two batches that were available on GroupGets. As with everything else, it's really hard to get GPS modules at the moment. GPS has no leap seconds, while leap seconds get added to UTC somewhat arbitrarily. The difference between the two is part of the normal GPS message transmitted by the satellites, and the GPS modules should produce correct UTC time. I think if I send you a firmware version which just powers up the module and logs the messages, it should just decode the correct UTC/GPS time offset from the satellite data and fix itself.
The two affected are from a batch received by Andy (only GPS). All modules basically look the same. Do you think the issue would resolve if I just keep them running for a few more days in a location with good GPS reception?
I'll post a firmware variant here shortly that will just log messages from the GPS module. We can then see if it updates itself if powered on for longer.
Thats good to know. Can you send a picture of the two that seem to have an offset. I think I this is the module using an old GPS to UTC time offset, possibly because it hasn’t had enough time listening to GPS messages to update the value of this correction.
It turns out that the issue is really connected to individual GPS modules. This is what the test last night produced:
It seems that the 2s offset is indeed coming from the GPS modules. I would think that they can be programmed somehow to do this?
Thanks. That's really useful. I can that these are the only two modules that report times that seem to differ from the originally set time on the AudioMoth by over 2 seconds which is strange (the logs report initial offsets of 2255 and 2242ms while all the others are much less than one second). When they are subsequently powered up immediately before other recording periods the time offset is still there. This suggests that the offset is in the messages from the GPS module, rather than a bug on our side, which is strange. Does the issue follow the GPS modules? Is it repeatable? Are the GPS outside with a clear view of the sky?
All Audiomoths have Firmware 1.8. There are actually two different types of GPS modules in use here: 8 modules received via Andy in April on Moths M22 to M29 (these are GPS only) and 4 via the latest Groupgets campaign on Moths 01n to 04n (GPS+Glonass).
I had the Moths running overnight and changed GPS modules. Will see if that makes a difference.
Can you also confirm which firmware version is being used.
Can you also confirm which GPS module is fitted to the affected devices.
Hi Michael, Can you send us the GPS log file from an affected and unaffected device. Alex