Topics In Demand
Notification
New

No notification found.

Unveiling the Insides of Android Power, Thermal, and Performance Testing
Unveiling the Insides of Android Power, Thermal, and Performance Testing

February 28, 2025

31

0

It is important to understand why power & thermal performance testing is required. We know the dependency on mobile phones and smart IoT Applications and devices is increasing and use cases are also changing. It is a must to know if a device is capable of handling high-end applications to ensure the overall system performance. 

Users are often worried about their device's power and battery performance. Battery life is the second most important purchase decision factor for mobile & IoT devices. Most smartphones have an intelligent thermal algorithm which reduces battery issues and improves smartphone performance. To reduce such issues, quality power and thermal testing to measure the battery life, device performance or heat issues is mandatory.  

Here in this blog, we will understand power thermal testing requirements and the use cases. 

1. What is power and thermal testing? 

Power and thermal testing is used to measure the power consumption readings for various scenarios like audio, video, game playback, graphics, game performance for different device types like smartphone, IoT gadgets, etc. 

Power measurement is used to measure the battery performance parameters like battery backup and battery performance. 

Whereas Thermal measurement focusses on the overall device performance in aspects of the concurrency use cases like “High End Game Playback”, 4K video playback, 4K Video encoding etc.  

2. The importance of measuring energy consumption 

 The energy consumption of these mobile devices is increasing. Users can observe excessive heating in some of these devices. 

  • Poor Battery Performance: 

If a smartphone or device battery performance is poor, it impacts day-to-day use. Users avoid devices with poor battery performance. 

   

 

  • Device Heating issues: 

Instances of problems with 4K video playbacks along with background downloads and applications running are observed often among users of high-end touch devices. Hence, it is better to perform power and thermal testing to avoid over-heating and safety issues. 

 

 

3. A list of devices where power & thermal testing was performed: 

  • Smart phones/Tablets – Android/iOS 

  • Automotive/ infotainment systems 

  • Battery-based device 

4. Android Power Manager states:  

  • Suspended 

  • Idle 

  • Active 

Suspended:  

  • Device states written to RAM/App processor is idle 

  • Communication processor at low level activity only to receive calls & SMS 

  • Other components are turned off by the power manager 

  • A device spends a significant amount of time in the idle state 

Idle: 

  • Device is fully active, but no application is running. 

  • Main Power consumption components are: Cellular radio, Graphics module, display and CPU 

Active: 

  • At least one application is running 

  • Device battery consumption depends on what usage scenario it is being used under (web browsing, email, voice call, video call, download etc.) 

 

5. Power Measurement Device: 

Power monitors are the most popular power monitoring device which help us identify  

  • Monsoon Power Monitor 

6. Waveform Measurements: 

 

Power measurement Waveforms

 

In the above diagram we can see the power waveform pattern along with average current consumption and voltage. With the help of power waveforms, we can check and debug if there are any power spikes that might cause the high-power numbers. 

The waveform can vary based on the test scenario we are running just like for a sleep scenario where device in the airplane mode is not connected to source the power. The waveform should be coordinated with the device state and there should t be no power leakage or spikes in the waveforms. 

 

7. How is a power and thermal testing for an Android device/application performed: 

  • Connect the device to the power monitor source (a -ve (cathode) and a +ve (anode). Monsoon Power monitor drivers are available on their official website. 

Power Monitor Tool Setup  

 

Power Monitor connection with the device

  • We should have benchmark numbers for power e.g. for sleep 1.5mA. 

  • Take the standard google audio video files from www.android.com and push them into the device. 

  • Command the push audio/video files in the device “adb push <audio/video file name>” /sdcard/ 

  • To perform any power test scenario, keep the device in an idle state eg. for sleep, the device should be in the airplane mode so that we can have the accurate sleep power numbers. 

  • Always reboot the device once the power numbers have been collected for a certain test scenario. This ensures that we have the idle power numbers for each test case scenario. 

 

  • We can avoid unnecessary noise by using “adb keyevents” for e.g. we can turn off the device screen without touching the power button or display using “adb keyevent”. 

  • Once the measurement is done, we can validate the average power consumption and share the reading results. 

 

 

 

8. Thermal Measurement Devices: 

Thermal measurement devices are used to check the hot spot and the heating surface of a device. For example, if a user is doing video encoding using a high-end smart phone with some background activity that is running, the phone surface near camera lens is checked to understand how the thermal tuning is done for that device and if it is exceeding temperature. Elevated temperatures degrade the performance of the device. 

  • IR –thermometers  

  • IR Guns 

Thermal Measurement Testing Use Cases: 

  • 4K Video Encoding  

  • High-End GPU Games 

  • Ultra 4K HD Video Playback 

  • Wi-Fi Download 

  • Above use cases with maximum allowed CPU frequency  

  • Validate device auto power off once temperature exceeds the threshold value  

The adb root permission for Android devices is required so that the CPU core frequency can be altered using the following commands. This helps us run the device at maximum frequency and also validate the device's thermal performance. It helps determine if that device is over-heated and to check if the performance is degraded. 

adb root 
adb shell 
cd /sys/devices/system/cpu 
echo userspace > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor 
echo 1600000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq 
echo 1600000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq 

Similarly, we can update the CPU frequency for other available CPU cores based on the use case we wanted to run like cpu1, cpu2, cpu3, etc.  

Here “1600000” (1.6GHz) is the maximum CPU frequency that is set-up for both the minimum and maximum scaling level so that the core always runs on maximum CPU frequency to validate the performance.  

The Android Framework also provides Thermal Mitigation approaches for high-end applications or due to increased usage; if a device’s temperature is above the threshold value set it should initiate thermal shutdown and power off the device to reduce the temperature. Developers can customize the thermal mitigation algorithm to validate the device or application performance. 

 

 

 

9. Tools 

ADB (Android Debug Bridge): adb is a command line interface for android devices and we can communicate with android devices using adb with wire or wireless connection. With the help of adb we can customize and update the system configurations to perform various test cases. 

 

Conclusion 

Power and thermal testing is a very essential part of today's smart devices/phone & IoT products. Power and thermal testing plays a key role in the success of products where the users are more focused on the measurements for such products, we can build a strong heating solution and algorithms which can enhance the overall performance and build the customer trust. 

 

Author Bio

Dilip Joshi: 

Dilip Joshi, currently with eInfochips (Product Engineering Services | Digital Transformation - IoT, ML, and Cloud Solutions), has over 12 years of extensive experience in Embedded Systems, IoT Devices, and Firmware Testing, including both Automation and Manual testing. He has worked across various domains and next-generation products such as Smart IoT Cameras, Access Control Systems, Satellite Modems, EV Chargers, Automotive Infotainment Systems, Qualcomm Chipsets, Mobile Handset Testing, Android Battery Testing, and Power Thermal Testing.

 


That the contents of third-party articles/blogs published here on the website, and the interpretation of all information in the article/blogs such as data, maps, numbers, opinions etc. displayed in the article/blogs and views or the opinions expressed within the content are solely of the author's; and do not reflect the opinions and beliefs of NASSCOM or its affiliates in any manner. NASSCOM does not take any liability w.r.t. content in any manner and will not be liable in any manner whatsoever for any kind of liability arising out of any act, error or omission. The contents of third-party article/blogs published, are provided solely as convenience; and the presence of these articles/blogs should not, under any circumstances, be considered as an endorsement of the contents by NASSCOM in any manner; and if you chose to access these articles/blogs , you do so at your own risk.


eInfochips, an Arrow company, is a leading global provider of product engineering and semiconductor design services. With over 500+ products developed and 40M deployments in 140 countries, eInfochips continues to fuel technological innovations in multiple verticals. The company’s service offerings include digital transformation and connected IoT solutions across various cloud platforms, including AWS and Azure. Visit- https://www.einfochips.com/

© Copyright nasscom. All Rights Reserved.