Upload file formats

I have uploaded measurement logs from my RuuviTags for some time, and now have a mixed collection of logs from iOS and Android devices. Sometimes one device had the most recent or most complete log, sometimes another one had.

I have writing a Python program to merge logs together, still working on it. One problem is random mistakes, e.g., air pressure of 10000, easy to detect, but a more difficult is smaller random mistakes, and their automated removal.

Also the file formats have frustrated me. They have changed a few times since I got my RuuviTags. I hope the formats will settle to
-something common for iOS and Android
–column names
–time format
–including or not the sensor name in the file itself
-something stable

@Rinat @Denis_Andreev Please take a look at this, especially the unified file format

Some observations of the file formats

  • iOS has two time and date columns, Android has one
  • Sometimes the column names are in Finnish, sometimes in English, and sometimes it’s a mixture of 2 languages. I do not believe I have changed my phones UI language ever, always in Finnish
  • Android file format has changed once in the past 12 months (as far as I can tell)
  • iOS file format has changed twice in the past 12 months (as far as I can tell)
  • iOS has the sensor name in the file itself (first row) and column names on the second row
  • Android has the column names on the first row, and no file name in the file itself
  • File naming is different in iOS vs. Android
  • Earlier log files had the temperature, humidity, and air pressure in multiple units (Centigrade, Fahrenheit…)
  • The inclusion of other data, such as, acceleration, battery level, RSSI, and measurement count seems random but I have not looked into this yet in detail

I have not looked yet into the number formats, whether they are identical (number of digits etc.) because I am still working on reading and merging the log files.

I also wonder how all this evolves when the Ruuvi Gateway is released, and would I forget about phone-based logs.

@Denis_Andreev @otso let’s finalise the format at https://docs.ruuvi.com?

@Mikko if you have any suggestions, we are happy to follow them. Actually we’ve been changing the formats based on other user’s requests.

Also the question is: shall we localise the headers or no need.

Hi Rinat,

Thanks for working on this. Regarding the format, well, I do not know how many people actually use these uploaded files, and would thus pay attention to the format in them. Probably most people who do long-time tracking of the measurements, use a computer (or Ruuvi Gateway) for logging.

Anyway, here’s my wishlist

  • Stable format, with descriptive header names
  • Localised headers and units (but English is fine, too)
  • No need to have values in many units (as you did earlier, with C, F, K etc.)
  • No need to include dew points etc. because they can be calculated by the user
  • Include headers only for those values for which you have values, too (this looks consistent now but was messy earlier)
  • Question: If you localise the headers, do you also localise the units (e.g., C, F, Pa, mmHg, inHg…)? I would localise also the units
  • I do not know about the date format. iOS has 2, Android has 1, and they are not the same. I like to Android approach more
1 Like