[HTC Pico (Explorer)] Red Devil:
Hello again fellow members ! I bring you yet another thread for reference thread ( read BORING ) , for our tiny community , here at xda-developers.com.

This is a reference thread about the

build.prop

that is found in our phones.

First up is the disclaimer :

#include<disclaimer.h>
$ Whatever you will be doing here is through root !
$ So whatever happens to your phone before or after editing something is purely your mistake.
$ If you blame me, I will blame you for not reading this.

Now , time for the terminologies.

I will split the build prop into 2 sections :

Standard build properties

Additional build properties

Here is a reference View attachment 1842653. You can keep referring to it while you are reading this guide/tutorial.

Standard build properties

So the normal build properties start with:

# begin build properties
# autogenerated by buildinfo.sh

This mentions that the build prop is built by build info shell script during the compilation of the ROM.

ro.build.id=JZO54K
ro.build.display.id=cm_pico-userdebug 4.1.2 JZO54K eng.sakindia123.20121117.161006 test-keys
ro.build.version.incremental=eng.sakindia123.20121117.161006
ro.build.version.sdk=16
ro.build.version.codename=REL
ro.build.version.release=4.1.2
ro.build.date=Sat Nov 17 16:10:21 GMT 2012
ro.build.date.utc=1353168621
ro.build.type=userdebug
ro.build.user=sakindia123
ro.build.host=build1
ro.build.tags=test-keys

1) First up the build id (Here JZO54K) is the build id for the version number for Jellybean 4.1.2.

2) It is the version of the ROM which appears in the about phone. This is a cm10 build by sakindia123.

3) This is the software development kit version which is needed and used for building the ROM.

4) 3's codename.

5) This is the android version of the ROM.

6) This is the time and date of when the ROM and Kernel were built together. (ROM only).

7) More details on the kernel.

8) Read 7.

9) Userdebug ROMs has usb debugging set to 0 and eng are for general release.

10) Name of the person building the ROM & kernel.

11) -

12) Test keys suggests that the ROM is not an official version of the ROM. Release keys are for official releases.

ro.product.model=HTC Explorer A310e
ro.product.brand=htc_europe
ro.product.name=pico
ro.product.device=pico
ro.product.board=pico
ro.product.cpu.abi=armeabi-v7a
ro.product.cpu.abi2=armeabi
ro.product.manufacturer=HTC
ro.product.locale.language=en
ro.product.locale.region=US
ro.wifi.channels=
ro.board.platform=msm7x27a
# ro.build.product is obsolete; use ro.product.device
ro.build.product=pico
# Do not try to parse ro.build.description or .fingerprint
ro.build.description=cm_pico-userdebug 4.1.2 JZO54K eng.sakindia123.20121117.161006 test-keys
ro.build.fingerprint=htc_europe/htc_pico/pico:2.3.5/GRJ90/207463.1:user/release-keys
ro.build.characteristics=default
ro.cm.device=pico
# end build properties
#

This part of the build prop shows the information about our phone and not the build of the ROM of our phone.

1) Model of our device

2) Brand of device. ( In some case carrier ) for which the android version has been made for.

3) Name is an alternative ( codename ) of the device during its development. For Explorer its pico, for Nexus 7 : grouper for Nexus 4 : mako for SG Ace its cooper etc.

4) -

5) -

6) It is the first instruction set (CPU + ABI convention type) of the code. Ours is an arm type arch cpu and abi version 7a )

7) It is the second instruction set type. ( like 6)

8) Name of manufacturer.

9) Language of the software ( read ROM)

10) Region of operation of software.

11) -

12) Name of board on which software has been built.

13) -

14 , 15 and 16. IMP: Never attempt to modify this value ! This can lead to bootloop (possibly hard brick) of your phone. This is the unique fingerprint of the software of your phone.

Now time for the system properties ! :).

RIL properties:

What is RIL ?

A Radio Interface Layer (RIL) is a layer in an operating system which provides an interface to the hardware's radio and modem on e.g. a mobile phone.

rild.libpath=/system/lib/libhtc_ril.so
rild.libargs=-d /dev/smd0
rilswitch.vendorlibpath=/system/lib/libhtc_ril.so
ril.subscription.types=NV,RUIM
ro.baseband.arch = msm
ro.ril.ecc.HTC-GCC=999,112,997
ro.ril.ecc.HTC-WWE=999
ro.ril.ecc.HTC-Dutch=112
ro.ril.ecc.HTC-SPA=112, 911,112, 911
ro.ril.ecc.HTC-FRA=112,911
ro.ril.ecc.HTC-ITA=112,911
ro.ril.ecc.HTC-EastEurope=112
ro.ril.enable.a52.HTC-ITA=1
ro.ril.enable.a53.HTC-ITA=1
ro.ril.enable.a52=0
ro.ril.enable.a53=1
ro.ril.hsdpa.category=8
ro.ril.hsxpa=1
ro.ril.fast.dormancy.rule=1
ro.ril.disable.fd.plmn.prefix=23402,23410,23411,23420,27202
ro.ril.enable.managed.roaming=1
ro.ril.gprsclass=10
ro.ril.oem.nosim.ecclist=911,112,999,000,08,118,120,122,110,119,995
ro.ril.emc.mode=2
ro.telephony.ril.v3=signalstrength,singlepdp,skipbrokendatacall
ro.ril.htcmaskw1.bitmask = 4294967295
ro.ril.htcmaskw1 = 14449
ro.ril.update.acoustic.table = 1
ro.ril.avoid.pdp.overlap = 1
ro.telephony.default_network = 0

1,2, and 3) : These are basically the links between your phones hardware and software , i.e. it tells your phone where to find the libs for RIL and also detects whether you have any arguments in place of the operation of your libs to provide to the vendor.

4) -*-

5) Architecture of baseband radio.

6,7,8,9,10,11,12) Syntax :

ro.ril.ecc.HTC-xxx=nnn,nnn,nnn

These are basically the emergency call numbers(codes) for your phone. Its different according to your region. ( here xxx ) . The numbers can be 911 , 101,100 etc etc ( here nnn)

13,14,15,16) Something to do with GPRS, AFAIK.

17) HSDPA category : High speed downlink packet access category. ( 8 == 7.2 mbit/s )

18) HSXPA : High speed ( type ) packet . ( values 1- HSDPA 2-HSDPA/HSUPA ( High speed uplink packet access )

19) Something to do with 3G.

20) -*-

21) Ability of enabling data roaming.

22) Class of GPRS network that needs to be routed to phone.

23) No sim emergency call codes list

24) -*-

25) This is somehow related to mobile data and its stablility. ( adding skipbrokendatacall adds stability ).

26) -*-

27) -*-

28) Related to ril audio.

29) -*-

30) Default type of data connection.

# Time between scans in seconds. Keep it high to minimize battery drain.
# This only affects the case in which there are remembered access points,
# but none are in range.
wifi.supplicant_scan_interval=180
wifi.interface=eth0
wifi.softap.interface=eth0

# density in DPI of the LCD of this board. This is used to scale the UI
# appropriately. If this property is not defined, the default value is 160 dpi.
ro.sf.lcd_density = 160

# View configuration for QVGA
view.fading_edge_length = 8
view.touch_slop = 15
view.minimum_fling_velocity = 25
view.scroll_friction = 0.008

# The OpenGL ES API level that is natively supported by this device.
# This is a 16.16 fixed point number
ro.opengles.version = 131072

# For no auto focus devices
ro.workaround.noautofocus = 1

# Increase SKIA decode memory capability for progressive jpg file
ro.media.dec.jpeg.memcap = 20000000

# For QC perf binary hooks
# src:vendor/qcom/proprietary/android-perf/release/lib/<CPU arch>/libqc-opt.so
ro.vendor.extension_library=/system/lib/libqc-opt.so

Please read the hashed out lines : It is selfexplanatory.

# Misc.
DEVICE_PROVISIONED=1
htc.audio.alc.enable = 1
htc.audio.swalt.enable = 1
dalvik.vm.heapsize=48m
ro.opengles.version = 131072
debug.composition.7x27A.type=mdp
media.stagefright.enable-player=true
media.stagefright.enable-scan=true
media.stagefright.enable-http=true
media.stagefright.enable-fma2dp=true
media.stagefright.enable-aac=true
media.stagefright.enable-qcp=true
ro.use_data_netmgrd=true
persist.data.ds_fmc_app.mode=0
ro.staticwallpaper.pixelformat=RGB_565
ro.max.fling_velocity=4000
httplive.enable.discontinuity=true
dev.pm.dyn_samplingrate=1
dev.pm.dyn_sample_period=700000
com.qc.hardware=true
com.qc.hdmi_out=false
debug.camcorder.disablemeta=0
debug.qctwa.statusbar=1
debug.qctwa.preservebuf=1
debug.enabletr=false
debug.sf.hw=1
ro.media.enc.jpeg.quality=100
ro.setupwizard.mode=OPTIONAL
hwui.print_config=choice
hwui.disable_vsync=true
ro.setupwizard.enable_bypass=1
ro.media.dec.aud.wma.enabled=1
ro.media.dec.vid.wmv.enabled=1
ro.config.sync=yes
ro.phone_storage=0
ro.hw_plat=7x27a

#Hwui
hwui.use.blacklist=true

1) There is a provision.apk in system/app requires this line.

2,3) Enabling certain audio libs.

4) Least amount of RAM that can be given to any application to run.

5) OpenGL 2.x.x

6) this is actually the software composition method. CAF suggests mdp for msm7x27a boards

7,8,9,10,11,12) media.stagefright is nothing but the type of media framework that is being supported and its various properties are in the build.prop. ( type of media playback : local media as well as online streaming like 3gp mpeg mp4 etc etc ).

13) It is the pixel format of RGB 565 with a constant value of 4

14) Something to do with app + data cache.

15) Self explanatory

16) Some thing with surface flinger hardware, aka our gpu.( probably framerate)

17) HTML Related.

18,19) Probably sampling rate of all media. ( Sound , picture quality etc etc . )

20) Something to do with the processes of above names.

21,22,23,24)-*-

25) debug surface flinger hardware. One of the best known tweaks , i.e. GPU Hardware acceleration.

26) Encoding media quality (jpeg)

27) Setupwizard ( google or otherwise ) enabling

28,29) Related to Hardware acceleration settings. (?)

30) By pass setup wizard.

31,32) Media decoding of audio and video of wma and wmv formats respectively.

33) Sync enabled at bootup.

34) something to do with phone storage. ( probably install location .. not sure)

35) hardware platform. msm7x27a.

36) Something to do with hwui. (?)

Next post for additional build properties. ! :D

The points with " -*- " are unknown properties to me.. Please mention them if you know what they mean.

The points with " -- " are points that are either too obvious or are repeated.

All corrections are welcome. I know this post has many mistakes , please feel free to correct them. A huge shout out to sakindia123 for correcting my mistakes. Thanks mate. This is supposed to be a sort of database of information. Please do your bit and contribute ! :D