Timemark time machine: a script to manipulate events within RINEX 3.xx files

Hi,

based on the idea of @wsurvey I have written a small Python script to add an offset to the events/timemarks within the RINEX 3.xx files. If you are using a system which does not produce a timemark at the exact time the image was taken (e.g. when using Phantom 4 leds and a photoresistor) you can use this software to correct the offset. It is primitive but functional. It also corrects the position of timemarks, can sort manually added timemarks into the correct position and deletes non valid timemarks.

The benefit of @wsurvey’s approach is, that you can process the RINEX file afterwards in RTKpost as if the events had been recorded without offset. So all interpolation is done by RTKpost and you do not need to do any further interpolation yourself. That is fanstastic, its is the best approach. Ever.

The script generates a backup of your file and does not change the original file. Anyhow I would not recommend to process a file of which you do not have another copy.

grafik

Disclaimer

The script is written in Python and is provided “as is”, without any warranties. I explicitly want to state that the software may contain errors and that the user must check the validity of the produced data.

IN NO EVENT SHALL THE AUTHORS OR DISTRIBUTORS BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OF THIS SOFTWARE, ITS DOCUMENTATION, OR ANY DERIVATIVES THEREOF, EVEN IF THE AUTHORS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

THE AUTHORS AND DISTRIBUTORS SPECIFICALLY DISCLAIM ANY WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT. THIS SOFTWARE IS PROVIDED ON AN “AS IS” BASIS, AND THE AUTHORS AND DISTRIBUTORS HAVE NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.

http://www.tcl.tk/software/tcltk/license.html

Download, use, and share your benefit

You can download an exe for Windows if you agree with the conditions. If you benefit from the software I would like you to share your benefit by donating to the Against Malara Foundation via this link: AMF. If you make a significant contribution I will consider to implement your personal wishes to the script (e.g. batch processing, additional RINEX formats, dual RINEX file generation with a separate file for the both event inputs or some fancy timemark pattern generated by e.g. cheap Canon cameras running CHDK and KAP UAV Exposure Control Script).

Any feedback is welcome.

Warning: the programm may cause a malware warning because of the way it is compiled. Even if I cannot guarantee that there is no malware, I do guarantee that I did not intentionally introduce one and take care that my system is malware free.

Download
>> RINEX manipulation tool<<

>> RINEX manipulation tool - P4P edition<< Version for DJI Flight record txt file (see this thread)
TXTlogToCSVtool.exe is needed in the same folder.
Since the DJI Flight record is not reliable it is only for demonstration.

4 Likes

Thanks for sharing Tobias !
:+1:

1 Like

Hi @tobias-dahms,

Great job! I think it helps a lot of our users :smile:

1 Like

I want to thank @pvargues and @wsurvey for their donations!

2 Likes

Ideas for further improvements: read events from DJI Phantom 4 Pro DAT files

Within the DJI Phantom 4 Pro DAT files there is a event log which lists commands with high frequency >200Hz. The command " 9887 [L-CMD]call exec_fc_v2_special_function" is called when the led is activated/deactivated when a picture is taken.

This is a generic description for several commands. In order to use the command to get the time when a picture was taken my script must be altered or a script must be written to do the following things:

  • convert the dat file
  • load the image time from the exif of the images
  • get ms resolution in the converted dat file by comparing the gps time stamp and the time offset.
  • search for the corresponding [L-CMD… in the converted dat file
  • add the ms from the [L-CMD to the image time
  • write the image time to the obs file

It would need some time to write the script. So if someone is interested in the solution please rise your voice…

This topic was automatically closed 100 days after the last reply. New replies are no longer allowed.