Operations 8 min read

How We Built a $2000 Temperature‑Controlled Test Box for Consistent Mobile Performance Testing

To ensure reliable performance‑testing data despite fluctuating ambient temperatures, the team designed and assembled a low‑cost, Arduino‑controlled temperature chamber for mobile devices, detailing the hardware architecture, circuit design, component list, code implementation, and thermal‑insulation optimizations.

NetEase LeiHuo Testing Center
NetEase LeiHuo Testing Center
NetEase LeiHuo Testing Center
How We Built a $2000 Temperature‑Controlled Test Box for Consistent Mobile Performance Testing

Background

Performance testing requires a stable ambient temperature; variations cause inconsistent mobile‑game performance and affect trend analysis.

Design Overview

A low‑cost thermostatic test chamber was built from an acrylic enclosure, a temperature‑controlled box, and a duct that houses a fan, a cooler, and a heater. Three DHT22 sensors positioned at the left‑rear, right‑rear, and top of the box continuously measure the internal temperature. An Arduino UNO R3 reads the sensors, a potentiometer sets the desired setpoint, and the controller drives the heater or cooler via digital outputs. An I2C OLED SSD1306 display shows the current and target temperatures.

Hardware Components

Acrylic sheets for the enclosure and box

Arduino UNO R3

Three DHT22 temperature sensors

10 kΩ potentiometer (knob) for setpoint selection

0.96" I2C OLED SSD1306 display

12 V cooling fan

Miniature cooler (e.g., Peltier or DC compressor)

Resistive heater element

Custom PCB to replace jumper‑wire connections and handle high current loads

Circuit Connections

Each DHT22 sensor connects to a digital input pin on the Arduino. The potentiometer connects to analog pin A0. The fan, cooler, and heater are driven through MOSFET or transistor switches on digital pins 11 (heater) and 12 (cooler). A 12 V supply powers the fan, cooler, and heater; the Arduino provides 5 V for sensors and the OLED.

Software

Temperature sensor reading

#include <DHT.h>
#define DHTPIN1 2
#define DHTTYPE DHT22
DHT dht1(DHTPIN1, DHTTYPE);
void setup() {
  Serial.begin(9600);
  dht1.begin();
}
void loop() {
  float curTemp = dht1.readTemperature();
  Serial.print("CurrentTemp:");
  Serial.println(curTemp);
}

Potentiometer (setpoint)

const int knobPin = A0;
void setup() {
  Serial.begin(9600);
}
void loop() {
  int raw = analogRead(knobPin);
  // Map 0‑1023 to 15‑35 °C range
  float target = map(raw, 0, 1023, 15, 35);
  Serial.print("Target:");
  Serial.println(target);
}

OLED display

#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
#define SCREEN_WIDTH 128
#define SCREEN_HEIGHT 64
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, -1);
void setup() {
  Serial.begin(9600);
  if(!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) {
    Serial.println(F("SSD1306 allocation failed"));
    while(1);
  }
  display.clearDisplay();
}
void loop() {
  display.setTextSize(2);
  display.setTextColor(WHITE);
  display.clearDisplay();
  // Example: display temperature values here
  display.display();
}

Actuator control

const int coolerPin = 12;
const int heaterPin = 11;
void setup() {
  pinMode(coolerPin, OUTPUT);
  pinMode(heaterPin, OUTPUT);
}
void loop() {
  // Assume curTemp and target have been read
  // if (curTemp > target + 1) digitalWrite(coolerPin, HIGH); else digitalWrite(coolerPin, LOW);
  // if (curTemp < target - 1) digitalWrite(heaterPin, HIGH); else digitalWrite(heaterPin, LOW);
}

Thermal Insulation Improvements

The acrylic box alone provided limited insulation. Adding a layer of insulating cotton increased heat retention, but the cotton was fragile and aesthetically poor. Covering the cotton with a carbon‑fiber film improved structural strength and gave the chamber a cleaner appearance.

Cost and Performance

All components cost less than ¥2000. In practice the chamber maintains the set temperature within ±1 °C for several hours, providing a repeatable environment for mobile‑game performance testing.

Performance Testingtest environmentArduinotemperature controlhardware DIY
NetEase LeiHuo Testing Center
Written by

NetEase LeiHuo Testing Center

LeiHuo Testing Center provides high-quality, efficient QA services, striving to become a leading testing team in China.

0 followers
Reader feedback

How this landed with the community

Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.