Welcome to XDA

Search to go directly to your device's forum

Register an account

Unlock full posting privileges

Ask a question

No registration required
Post Reply

[HOWTO][INFO]Editing the CSC file on your phone.

OP garyd9

12th November 2012, 11:09 PM   |  #1  
garyd9's Avatar
OP Recognized Developer
Flag Pittsburgh, PA
Thanks Meter: 2,164
 
2,084 posts
Join Date:Joined: Sep 2006
All samsung "touchwiz" based devices contain files in /system/csc that set variables dictating how certain parts of the phone act, what is pre-configured, etc. In the case of the AT&T variants, the contents of these files are often dictated by AT&T.

This post is an attempt to try and catalog some of the more useful values that can be changed (and the result of changing them.) Not all the variables seem to do much, and only by trial and error can we really know what will happen... So far, I've only played around with items I found interesting, but will continue to expand in this and if people reply to this post with actual experience changing other variables, I'll add the information to this thread.

PLEASE TEST THINGS AND CONTRIBUTE TO THIS THREAD.

Please don't reply with guesses as to what things may or may not do or with requests about specific variables. I'm hoping that eventually document every CSC variable available and "requests" won't make it go faster. If you want to know what a not-yet-documented variable does, try it out (and post your results.)

First, in order to play with the csc files, your phone should be rooted. This isn't optional, as you'll need the ability to overwrite files in the phone's /system partition (the firmware - sometimes improperly called the "ROM")

I'd strongly suggest making a nandroid (or backup via CWM Recovery or TWRP) before making changes. It's possible to mess things up badly enough that the phone won't boot properly.

It's possible to edit the CSC files directly on the phone, but I'd strongly suggest not doing that. Therefore, you should have a good text editor on your computer that's able to properly deal with unix/linux style line endings (notepad isn't good enough.) Notepad++ is a very good editor and freely available. Google "notepad++" For a linux box, plain "gedit" is fine.

In order to edit the files, you'll need to be able to mount the /system partition as read-write, and to move files from /system/csc to your PC or other location for editing. You have several options for this including root explorer, ES File Explorer, or just using adb. I prefer adb myself, but I'm a commandline type of person.

I won't be spending time describing how to get the CSC files off your phone to your PC, nor will I tell you how to overwrite the existing ones with your edits. This isn't because I'm elitist, an a**hole, or anything like that. (I _am_ some of those things, but that isn't my reason here.) My purpose for leaving out the information is to force inexperienced users to learn these things before editing system files. If I give you all the information, you become dependent on me for more information, and I don't want that (and trust me - neither do you.) As well, if I spoon-feed this, you won't have any idea what do to when something goes wrong.
Find this post helpful? If so, please make it MORE helpful by testing one of the other CSC features and replying to this thread telling us what result you had.

First up... feature.xml...
Last edited by garyd9; 19th November 2012 at 07:22 PM.
The Following 24 Users Say Thank You to garyd9 For This Useful Post: [ View ]
12th November 2012, 11:10 PM   |  #2  
garyd9's Avatar
OP Recognized Developer
Flag Pittsburgh, PA
Thanks Meter: 2,164
 
2,084 posts
Join Date:Joined: Sep 2006
feature.xml

The CSC "feature.xml" file is in XML format. This means that everything "variable" has a start and end tag. Both contain the name of the variable,

but the end tag has a slash in it. The value of the variable is between the start and end tags. For example: <VariableName>value</VariableName>. So, if this message describes changing "CscFeature_SamsungSucks" from "false" to "true", you'd search in the xml file for "CscFeature_SamsungSucks" and might find this:
Code:
<CscFeature_SamsungSucks>false</CscFeature_SamsungSucks>
You'd change the "false" to "true" (no quotes!) and be done. In some cases, the entire line can be deleted (as noted.)

This file has a LOT of variables in it and this post will concentrate on that particular file. Almost all tinkering will occur in this file, and it's also the easiest to edit (as there aren't any complex xml structures.)

CscFeature_Common_DisableMenu4GalSearch: setting this to false didn't seem to bring up any new global address list options on my device (I'm connected to an exchange server) in the email app or contacts/dialer app.

CscFeature_Settings_DisableMenuFindMyMobile: (see next line)

CscFeature_Settings_FindMyMobile: setting "DisableMenuFindMyMobile" to false and this entry to true will enable the "find my mobile" entries in the Settings->Security menu. I'm unable to get these items to function properly, however. (They worked with my international note2, so it might be that there are other support files missing on the AT&T variant I'm using now.)

CscFeature_FMRadio*: editing these seem to have no effect (I don't think any of the LTE capable NoteII phones are capable of FM Radio.)

CscFeature_NFC_StatusBarIconType: If you delete this line, it will get rid of the "N" statusbar icon when NFC is turned on.

CscFeature_Message*: Be warned that editing some of these may break SMS/MMS messaging on your device. There appears to be many carrier specific settings in here that have dependencies on the specific carrier. For example, I don't think that AT&T's network supports proper SMS Delivery reports, so even setting the corresponding variable to "true" would be futile.

CscFeature_Email_UseFixedBgColorAsWhite: if changed from true to false, the email app will appear inverted (with a black background and white/gray text.)

CscFeature_Sip_DisableAutoCorrection: doesn't seem to have any impact on the samsung keyboard

CscFeature_Sip_DisableSpaceSuggestion: doesn't seem to have any impact on the samsung keyboard

CscFeature_Sip_DefaultOff4AutoSubstitution: doesn't seem to have any impact on the samsung keyboard

CscFeature_Launcher_*: all these seem to be for setting defaults for the touchwiz launcher, so no sense in changing them.
Last edited by garyd9; 13th November 2012 at 02:41 AM.
The Following 8 Users Say Thank You to garyd9 For This Useful Post: [ View ]
12th November 2012, 11:10 PM   |  #3  
garyd9's Avatar
OP Recognized Developer
Flag Pittsburgh, PA
Thanks Meter: 2,164
 
2,084 posts
Join Date:Joined: Sep 2006
language.xml

(coming soon)

This appears to control what languages are available to the system. Canadian users might want to play with this file to see if adding en_US to the "Display" and/or "SupportList" tags will allow them to choose US English (and perhaps get google's TTS to talk to them in google now.)
Last edited by garyd9; 12th November 2012 at 11:15 PM.
The Following 4 Users Say Thank You to garyd9 For This Useful Post: [ View ]
12th November 2012, 11:10 PM   |  #4  
garyd9's Avatar
OP Recognized Developer
Flag Pittsburgh, PA
Thanks Meter: 2,164
 
2,084 posts
Join Date:Joined: Sep 2006
others.xml

(coming soon)

This appears to set some carrier defaults, including the APN information and the carrier built-in dialer contacts (such as "AT&T Customer Care")
Last edited by garyd9; 12th November 2012 at 11:15 PM.
12th November 2012, 11:11 PM   |  #5  
garyd9's Avatar
OP Recognized Developer
Flag Pittsburgh, PA
Thanks Meter: 2,164
 
2,084 posts
Join Date:Joined: Sep 2006
customer.xml

(coming soon)

I've only glanced at this file so far, but it appears to be carrier specified network information, some carrier specified settings defaults, and even some carrier specified browser bookmarks. There also appears to be some APN related information in here, but I'm not certain what it's in here for.
Last edited by garyd9; 12th November 2012 at 11:15 PM.
13th November 2012, 01:47 AM   |  #6  
mjwhirly's Avatar
Senior Member
Flag CT
Thanks Meter: 508
 
454 posts
Join Date:Joined: Aug 2010
More
Nice how to guide man its very informative, im going to play around with this later when I get home...do you mind if I add it to my reference thread so it doesnt get lost when this thread begins to get bigger?

Sent from my SAMSUNG-SGH-I317 using xda premium
13th November 2012, 02:00 AM   |  #7  
garyd9's Avatar
OP Recognized Developer
Flag Pittsburgh, PA
Thanks Meter: 2,164
 
2,084 posts
Join Date:Joined: Sep 2006
Quote:
Originally Posted by mjwhirly

Nice how to guide man its very informative, im going to play around with this later when I get home...do you mind if I add it to my reference thread so it doesnt get lost when this thread begins to get bigger?

This isn't mine to control. This "belongs" to the community, and I hope that the community contributes to it in a meaningful way. Please feel free to reference it elsewhere - perhaps with (contributions welcome) noted. My ONLY demand is that no one profits from effort I've given freely.

My secret motive is to nudge people out of the "MyRom" mentality and more into the "lets all work together to learn, develop and share" mentality often seen with kernels and open source projects.

Take care
Gary
The Following 11 Users Say Thank You to garyd9 For This Useful Post: [ View ]
13th November 2012, 03:00 AM   |  #8  
antiochasylum's Avatar
Recognized Contributor
Flag Burleson TX
Thanks Meter: 7,727
 
4,181 posts
Join Date:Joined: May 2010
Donate to Me
More
Gary, have you seen the CSC feature web, set user agent?

Possibly an option to set "Desktop" as default user agent in browser, I for one despise mobile sites.
13th November 2012, 03:06 AM   |  #9  
garyd9's Avatar
OP Recognized Developer
Flag Pittsburgh, PA
Thanks Meter: 2,164
 
2,084 posts
Join Date:Joined: Sep 2006
Quote:
Originally Posted by antiochasylum

Possibly an option to set "Desktop" as default user agent in browser, I for one despise mobile sites.

Not sure if this is what you are looking for or not: Start the browser, tap the "menu" button. Turn on the "desktop view" checkbox.

There are some UAgent related entries in the feature.xml file. Please play with them and post your results:

CscFeature_Web_SetUserAgent // currently empty
CscFeature_Web_SetUAProfile
CscFeature_Web_Bool_EnableUAProfile // currently false
The Following User Says Thank You to garyd9 For This Useful Post: [ View ]
17th November 2012, 04:00 PM   |  #10  
Romee74's Avatar
Senior Member
Thanks Meter: 119
 
431 posts
Join Date:Joined: May 2011
More
Thanks so much for this. Sorry for the noob question but I haven't done much with xml files. What is the character to just comment out a line?

Sent from my SAMSUNG-SGH-I317 using xda premium

Post Reply Subscribe to Thread
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes