/ Smartphone / Device Tech /

Challenge

Measure ambient temperature with a smartphone through programming alone

Measure Vibration of Objects

Marko

A sound would be emitted from the phone you would need to point the camera to a plant or something that could move.

The camera can detect the object’s vibration. Based on how much it moves it could tell you the temperature.

Thermal calibration

Caleb

Create an app that measures the rate of heat loss from the phone to estimate the air temperature. This is done by placing the phone on a solid flat surface such as a table in a room with a known and fixed air temperature such as an air-conditioned room. The app would run the phone’s electronics at different levels in incremental steps to find the phone’s stable temperatures at different loads using its internal thermocouples. Next, the air temperature is changed and the process is repeated several more times, with the air temperature keyed into the phone each time round.

With the database of the different stable temperatures at different air temperatures, the current air temperature can be estimated when the app is run by placing it on a flat surface and the phone would be kept at a fixed load, causing it to come to a steady temperature, thus finding the ambient temperature.

To speed the process up, using the app can calibrate the phone by finding the rate of change in the temperature of the phone from a low load to a high load or vice versa, using an algorithm to interpolate the air temperature from the rate of change of temperature.

The key point is to have the phone resting on a similar surface to the one it was resting on when being calibrated, or in a phone case that provides decent insulation from the exterior while leaving one side (the screen) exposed to the air. The phone has to be away from any source of heat (even direct sunlight) or any heat sink (cold metal table) so that it is losing heat to the air and not gaining/losing to any other environmental sources.

Speed of Sound

Mark

The speed of sound is greater in hot air than it is in cold air. Assuming the room you are in is about the same temperature, you could use a sound emitted from your smartphone to measure how fast the sound is traveling. You would need to bounce the sound off of a wall at a (most likely) constant distance and see how fast it travels there and back. The difference between degrees would be very slight but should be measurable.

Rate of Evaporation

MadMan278

User breaths onto the camera to form complete condensate coverage, measure how long it takes for condensate to evaporate away. There should be a correlation between speed of evaporate and ambient temperature, might require multiple measurements. Also assumes phone is at room temperature to start with.

Make It Sweat

Guillaume

Step 1 (identification). Programmatically identify the mobile CPU and GPU (if exists).

Step 2 (stress test). Time (at the nanosecond level) a few loop operations (making the CPU and/or the GPU 100% loaded) for a total of less than 60 seconds. Average the speeds of several samples of each operation (CPU-only loops, GPU-only loops, CPU&GPU loops).

Step 3 (look up). Search the averaged loop speeds in an hardcoded table listing mobile CPUs and GPUs and the reference speeds of the loop operations under different ambient temperatures (incrementation: less than 0.5° C.). Indeed: mobile CPU/GPU speeds are affected by ambient temperature.

iFever

MadRobots

iPhones have an operating temperature ambient situated between 0° and 35° Celsius.

The manufacturer also provides information about a non-operating temperature interval ranging between -20° to 45° C. If your device’s temperature drops below or rises above its operating limits, iOS will prompt you with a warning message and ask you to warm it up or cool it down. By taking into account the level of the battery + running a series of stress routine using GPS, GPU, CPU, it will be possible to work out the increasing operating temperature curve against the temperature warning.

After several/iterative tests, it should be possible to give an approximate room temperature.

Submit your own idea!

Submit your idea to earn a future revenue share!

+ Submit Idea