Skip to content

PurpleRobot

Richard Darst edited this page May 11, 2016 · 8 revisions

Configuration

Please go to settings and set these properties:

  • Probes configuration. Do this first so that you don't accidentally upload any data!

    • Enable probes: on, then go through and manually disable every probe, then turn on the ones you want.
    • See below for information on specific probes that you may want to try out.
    • Here are our suggested probes for general use.
      • Hardware sensor probes: Location (frequency: 30 min), Step counter.
      • Device Info&Config: Battery probe, Screen Probe, Device in Use.
      • External device probes: Wifi Probe (sampling frequency: every 5 min)
    • You may experiment with any other probes you would like, but consider the tradeoffs between data collected, privacy, and battery usage.
  • User ID: anything, not used

  • General data upload settings

    • Accept all SSL certificates: false
    • HTTP upload endpoint: As listed in the server page, https://data.koota.cs.aalto.fi/post/purple/<device_secret_id> , where <device_secret_id> is taken from the config page. (make sure you use https)
    • Only use wifi connection: true (if you want)
    • Encrypt data: I don't know what this does, either way data is encrypted using SSL during transport, and this option appears to have no effect on what the server gets.
  • JSON uploader settings ==> Enable JSON uploader: on

    • This is what starts sending data.
  • Configuration URL: blank

  • Refresh interval: Never

  • Logging: don't enable logging (in particular, don't enable network logging, the app seems to be able to upload them, and thus they collect and make an error message.) If someone wanted to investigate this...

Notes on probes

You should try out different probes, and add information on them to this page. For each probe, we should know a) what raw data looks like b) privacy considerations (what identifiers are in it) c) data quantity d) distributions of typical data.

  • BluetoothProbe makes a huge amount of data, most of it redundant. If on, it is over 90% of the data usage, and a lot of it is internally redundant. With postprocessing to remove redundancies, this can be made much smaller.
  • The WifiProbe is (maybe) 9% of data usage, if it is on. But this is OK.
  • StepCounterProbe has timestamps that are not in unixtime. They seem to be increasing at the rate 1/s, but the origin is wrong. Perhaps the are normalized by boot time, which can be found in RobotHealthProbe.

Other notes

Application dying

Note: this section is quite technical and written as notes, not instructions.

We've noticed PR sometimes not sending data. We are trying to understand what is going on. It could be that the background service dies.

  • Check app-on time in developer options: turn on developer options (do a web search, click build number 7 times under about phone), under developer options->running services you can see what is running in the background, to see if it dies somehow.
Clone this wiki locally