SensibilityTestbed / sensibility-testbed

1 stars 5 forks source link

Automatic Sensor Testing using Household Items #33

Open lukpueh opened 8 years ago

lukpueh commented 8 years ago

Recently, we discussed ideas about how to programmatically test Sensors found on Android devices with real values. Below you find a list of testing setups and needed resources for almost all of the available Android Sensors. Most of the ideas include a moving device (e.g. a turntable) that can be switched on/off programmatically using a Smart Power Outlet and other devices (e.g. light source, heat source, electromagnet, ...) that are placed around the moving device with the Android devices attached to it.

This document is based on Simple, Repeatable Smartphone Sensor Calibration Using Elementary Physics And Household Items by courtesy of @aaaaalbert and ideas from @JustinCappos.

Testing setups per Sensors

Move/accelerate device on three axis accelerometer, linear_acceleration, orientation, gravity, rotation_vector, gyroscope, gyroscope_uncalibrated, game_rotation_vector, geomagnetic_rotation_vector Resources:

If the device lies flat on the turntable we can only cover two axis. We could attach one end of the phone to a hinge attached to the turntable and place a fixed ramp next to the turntable so that when the device turns by, the free part slides over the ramp and hence changes its inclination. Also I don't know if the acceleration produced when starting/stopping the turntable would be significant enough.

Change ambient temperature and pressure ambient_temperature, pressure Resources:

Change ambient humidity relative_humidity Resources:

Change light by switching on/off or moving towards/away from light source light Resources:

Move device towards/away from object proximity Resources:

Change magnetic field by switching on/off or moving towards/away form electromagnetic device magnetic_field, magnetic_field_uncalibrated Resources:

Monitor battery drain Battery Attaching the Android device to a power source in case it moves on turntable will be difficult anyways

Change strength/availability by switching on/off or moving towards/away from a WiFi access point or placing obstacles between signal source and device WiFi interface, cellular network Resources:

Sensors/Services not covered: Heart rate, location, microphone, speaker

JustinCappos commented 8 years ago

Won't the turntable make noise that you can use to test the mic?

Additionally / alternatively, can you just make a noise in the speaker and listen for it with the mic?

Thanks, Justin

On Fri, May 13, 2016 at 1:52 PM, lukpueh notifications@github.com wrote:

Recently, we discussed ideas about how to programmatically test Sensors found on Android devices with real values. Below you find a list of testing setups and needed resources for almost all of the available Android Sensors. Most of the ideas include a moving device (e.g. a turntable) that can be switched on/off programmatically using a Smart Power Outlet and other devices (e.g. light source, heat source, electromagnet, ...) that are placed around the moving device with the Android devices attached to it.

This document is based on Simple, Repeatable Smartphone Sensor Calibration Using Elementary Physics And Household Items https://docs.google.com/document/d/1ZLt7u0an-TQPOB4TdhaznQjiHzpAQffE8ekbUOXWna0/edit?pref=2&pli=1# by courtesy of @aaaaalbert https://github.com/aaaaalbert and ideas from @JustinCappos https://github.com/JustinCappos. Testing setups per Sensors

Move/accelerate device on three axis accelerometer, linear_acceleration, orientation, gravity, rotation_vector, gyroscope, gyroscope_uncalibrated, game_rotation_vector, geomagnetic_rotation_vector Resources:

  • Smart Power Outlet
  • Something that moves, e.g. turntable
  • Ramp
  • Hinge
  • duct tape :)

If the device lies flat on the turntable we can only cover two axis. We could attach one end of the phone to a hinge attached to the turntable and place a fixed ramp next to the turntable so that when the device turns by, the free part slides over the ramp and hence changes its inclination. Also I don't know if the acceleration produced when starting/stopping the turntable would be significant enough.

Change ambient temperature and pressure ambient_temperature, pressure Resources:

  • Smart Power Outlet
  • Heat source, e.g. incandescent light bulb, hair dryer, electric heater
  • Heat isolation material

Change ambient humidity relative_humidity Resources:

  • Smart Power Outlet
  • Humidifier

Change light by switching on/off or moving towards/away from light source light Resources:

  • Smart Power Outlet
  • (Something that moves, e.g. turntable)
  • Light source
  • Light isolation

Move device towards/away from object proximity Resources:

  • Smart Power Outlet
  • Something that moves, e.g. turntable
  • An object that bounces back whatever signal is used for the sensor

Change magnetic field by switching on/off or moving towards/away form electromagnetic device magnetic_field, magnetic_field_uncalibrated Resources:

  • Smart Power Outlet
  • (Something that moves, e.g. turntable)
  • Electromagnet or any electrical device

Monitor battery drain Battery Attaching the Android device to a power source in case it moves on turntable will be difficult anyways

Change strength/availability by switching on/off or moving towards/away from a WiFi access point or placing obstacles between signal source and device WiFi interface, cellular network Resources:

  • Smart Power Outlet
  • (Something that moves, e.g. turntable)
  • WiFi access point(s)
  • Isolating material (Any ideas what to use?)
  • Jammer (I guess they are expensive and other people in the lab won't be happy)

Sensors/Services not covered: Heart rate, location, microphone, speaker

— You are receiving this because you were mentioned. Reply to this email directly or view it on GitHub https://github.com/SensibilityTestbed/sensibility-testbed/issues/33

yyzhuang commented 8 years ago

👍 duct tape, humidifier.

I'm not sure if any electric device can affect the magnetic field, I could be wrong. IMO magnetic object will definitely have an impact.

lukpueh commented 8 years ago

I think there are several ways to produce noise. I don't know if we can use a phone's speaker and its microphone at the same time, but I will find out.

aaaaalbert commented 8 years ago

(A filament lamp should be able to do both heat and magnetic field.)

RohanBhirangi commented 8 years ago

I will try to find devices that suit our needs.

lukpueh commented 8 years ago

I reviewed a couple of Smart Power Outlets some time ago and I never posted my findings. So here they are:

I’d go for a Belkin WeMo, because it seems to be the one that has been used most in an open way. There is an unofficial Python library/REST API on PyPi which has a long release history and is under active development. See also Bradut’s comment on 23 March, 2016 in

They are sold on amazon for about 35 Dollars. I think we should get a couple of those.

yyzhuang commented 8 years ago

@lukpueh sorry you mentioned:

So here they are:

Is this the link to it? http://www.makeuseof.com/tag/6-smart-plugs-arent-belkin-wemo/

RohanBhirangi commented 8 years ago

Found a couple of turn tables around $30. Might be useful for the task. Product1

Product2