So I had been having problems with my GPS getting a fix when using Maps etc. It was getting fix with High Accuracy mode but with Device Only mode it wasn't working.
So I tried to tinker with the gps.conf file located in /system/etc/
You need root access for this.
Make a backup of /system/etc/gps.conf file
Go to http://www.pool.ntp.org/en/ and get the address of the server nearest to you. E.g. Mine is pk.pool.ntp.org for Pakistan.
Using your favorite text editor, open the file gps.conf
Code:
#Uncommenting these urls would only enable
#the power up auto injection and force injection(test case).
#XTRA_SERVER_1=http://xtra1.gpsonextra.net/xtra.bin
#XTRA_SERVER_2=http://xtra2.gpsonextra.net/xtra.bin
#XTRA_SERVER_3=http://xtra3.gpsonextra.net/xtra.bin
#
XTRA_SERVER_1=http://xtra1.gpsonextra.net/xtra2.bin
XTRA_SERVER_2=http://xtra2.gpsonextra.net/xtra2.bin
XTRA_SERVER_3=http://xtra3.gpsonextra.net/xtra2.bin
# Error Estimate
# _SET = 1
# _CLEAR = 0
ERR_ESTIMATE=0
#Test
NTP_SERVER=time.gpsonextra.net
#Asia
[color=blue] # NTP_SERVER=asia.pool.ntp.org[/color]
#Europe
# NTP_SERVER=europe.pool.ntp.org
#North America
# NTP_SERVER=north-america.pool.ntp.org
# DEBUG LEVELS: 0 - none, 1 - Error, 2 - Warning, 3 - Info
# 4 - Debug, 5 - Verbose
# If DEBUG_LEVEL is commented, Android's logging levels will be used
DEBUG_LEVEL = 2
# Intermediate position report, 1=enable, 0=disable
INTERMEDIATE_POS=0
# supl version 1.0
SUPL_VER=0x10000
# Emergency SUPL, 1=enable, 0=disable
SUPL_ES=1
# GPS Capabilities bit mask
# SCHEDULING = 0x01
# MSB = 0x02
# MSA = 0x04
# ON_DEMAND_TIME = 0x10
# GEOFENCE = 0x20
# default = ON_DEMAND_TIME | MSA | MSB | SCHEDULING | GEOFENCE
CAPABILITIES=0x37
# Accuracy threshold for intermediate positions
# less accurate positions are ignored, 0 for passing all positions
# ACCURACY_THRES=5000
################################
##### AGPS server settings #####
################################
# FOR SUPL SUPPORT, set the following
# SUPL_HOST=supl.host.com or IP
# SUPL_PORT=1234
# FOR C2K PDE SUPPORT, set the following
# C2K_HOST=c2k.pde.com or IP
# C2K_PORT=1234
####################################
# LTE Positioning Profile Settings
####################################
# 0: Enable RRLP on LTE(Default)
# 1: Enable LPP_User_Plane on LTE
# 2: Enable LPP_Control_Plane
# 3: Enable both LPP_User_Plane and LPP_Control_Plane
LPP_PROFILE = 0
################################
# EXTRA SETTINGS
################################
# NMEA provider (1=Modem Processor, 0=Application Processor)
NMEA_PROVIDER=0
# Mark if it is a SGLTE target (1=SGLTE, 0=nonSGLTE)
SGLTE_TARGET=0
##################################################
# Select Positioning Protocol on A-GLONASS system
##################################################
# 0x1: RRC CPlane
# 0x2: RRLP UPlane
# 0x4: LLP Uplane
A_GLONASS_POS_PROTOCOL_SELECT = 0
Remove the # symbol at the start of the blue line and replace asia.pool.ntp.org with the nearest country server address.
reboot and the GPS should fix faster.
Sent from my A0001 using Tapatalk
can you make an app like FasterGPS?
I use it to add Pakistan quickly, but issue is it only adds pk.pool.ntp.org, pool.NTP.org servers and removes all gpsonextra.net servers
---------- Post added at 01:54 PM ---------- Previous post was at 01:32 PM ----------
can you make an app for this like FasterGPS?
issue with fasterGPS app is, it removes all timeonextra.net servers
i want to use it for Pakistan as well
Related
Can someone help me out, as to how to implement this out for our device...
This is a quick gps mod, which is supposed to work on most phones...
I understood the beginning part (though haven't actually started doing it), but I got lost,midway...with most of the stuff going over my head...anyone care to explain???
Or does someone know any easier-to-implement way??
Link: http://forum.xda-developers.com/showthread.php?t=1239713
a.cid said:
Can someone help me out, as to how to implement this out for our device...
This is a quick gps mod, which is supposed to work on most phones...
I understood the beginning part (though haven't actually started doing it), but I got lost,midway...with most of the stuff going over my head...anyone care to explain???
Or does someone know any easier-to-implement way??
Link: http://forum.xda-developers.com/showthread.php?t=1239713
Click to expand...
Click to collapse
I think basically we have edit the code as per the NTP servers of your country
and then paste that file to the location specified with permissions RW-R-R
Code:
NTP_SERVER=COUNTRY.pool.ntp.org
NTP_SERVER=0.asia.pool.ntp.org
NTP_SERVER=1.asia.pool.ntp.org
NTP_SERVER=2.in.pool.ntp.org
# DEBUG LEVELS: 0 - none, 1 - Error, 2 - Warning, 3 - Info
# 4 - Debug, 5 - Verbose
DEBUG_LEVEL =0
# Intermediate position report, 1=enable, 0=disable
INTERMEDIATE_POS=0
# Accuracy threshold for intermediate positions
# less accurate positions are ignored, 0 for passing all positions
ACCURACY_THRES=0
# Report supl ref location as position, 1=enable, 0=disable
REPORT_POSITION_USE_SUPL_REFLOC=1
# Wiper (wifi positioning), 1=enable, 0=disable
ENABLE_WIPER=1
################################
##### AGPS server settings #####
################################
# FOR SUPL SUPPORT, set the following
SUPL_HOST=supl.google.com
SUPL_PORT=7276
SUPL_NO_SECURE_PORT=3425
SUPL_SECURE_PORT=7275
SUPL_TLS_HOST=FQDN
SUPL_TLS_CERT=/etc/SuplRootCert
# FOR C2K PDE SUPPORT, set the following
C2K_HOST=c2k.pde.com
C2K_PORT=1234
CURRENT_CARRIER=common
DEFAULT_AGPS_ENABLE=TRUE
DEFAULT_SSL_ENABLE=FALSE
# TRUE for "User Plane", FALSE for "Control Plane"
DEFAULT_USER_PLANE=TRUE
after that reboot and then he has instructed to download a market app to reset the A-GPS state..
The easier way? https://market.android.com/details?id=com.Double.FasterFix
GUYS please confirm these settings,used to work on my galaxy 551
on galaxy y not sure because the config file in my device wasnt exactly the same as the 551....
credits to xenova
Guys,
I decided to write this because a lot of us here still facing GPS issue on their device. I almost give up on my HTC Desire HD because of the GPS problem. After I find this trick, now I realized that HTC devices have one of the most brilliant GPS hardware. It always get a location lock within 5 - 15 seconds.
This trick not only to speedup the satelite fixing. Some also found that it increase the reception (strong signal even during cloudy, light raining, and inside building's window). I am one of this case .
Here is the tricks. It is tested on HTC desire HD, SGSII, and speculated to work on most Android device (Please note that it is in sequential order):
Requirements:
Rooted Device
File Manager: e.g. Root Explorer
1. Searching for NTP server information
Go to http://www.pool.ntp.org/en/
At the right side of webpage, there is "Active Servers". Go in and look for the setting of your 1)region and 2)country
For example, one's region is Europe then you write down the NTP server for that: 0.europe.pool.ntp.org; 1.europe.pool.ntp.org; 2.europe.pool.ntp.org; 3.europe.pool.ntp.org
Then the servers for your country from the list down there and click the link(Example: Switzerland — ch.pool.ntp.org; 0.ch.pool.ntp.org; 1.ch.pool.ntp.org; 2.ch.pool.ntp.org; 3.ch.pool.ntp.org
The "Italic" words are the information you need to jot down for later use
3. Modify the gps.conf file (Most Crucial Stage)
Copy the codes in grey box (in first post) to a notepad, then change the extension name from .txt to .conf then copy to your phone
Use file manager to copy to this location: /etc/gps.conf and replace the original gps.conf
Open and Edit the gps.conf using rootexplorer or others file managers
Change the COUNTRY and REGION in following lines with the info you got from the website just now. Keep other values unchange unless you know what it is. Example of REGION such as NorthAmerica, Asia, Africa, Europe.
Your new gps.conf should look as below:
NTP_SERVER=COUNTRY.pool.ntp.org
NTP_SERVER=0.COUNTRY.pool.ntp.org
NTP_SERVER=1.COUNTRY.pool.ntp.org
NTP_SERVER=2.COUNTRY.pool.ntp.org
NTP_SERVER=3.COUNTRY.pool.ntp.org
NTP_SERVER=0.REGION.pool.ntp.org
NTP_SERVER=1.REGION.pool.ntp.org
NTP_SERVER=2.REGION.pool.ntp.org
NTP_SERVER=3.REGION.pool.ntp.org
XTRA_SERVER_1=http://xtra1.gpsonextra.net/xtra.bin
XTRA_SERVER_2=http://xtra2.gpsonextra.net/xtra.bin
XTRA_SERVER_3=http://xtra3.gpsonextra.net/xtra.bin
# DEBUG LEVELS: 0 - none, 1 - Error, 2 - Warning, 3 - Info
# 4 - Debug, 5 - Verbose
DEBUG_LEVEL =0
# Intermediate position report, 1=enable, 0=disable
INTERMEDIATE_POS=0
# Accuracy threshold for intermediate positions
# less accurate positions are ignored, 0 for passing all positions
ACCURACY_THRES=0
# Report supl ref location as position, 1=enable, 0=disable
REPORT_POSITION_USE_SUPL_REFLOC=1
# Wiper (wifi positioning), 1=enable, 0=disable
ENABLE_WIPER=1
################################
##### AGPS server settings #####
################################
# FOR SUPL SUPPORT, set the following
SUPL_HOST=supl.google.com
SUPL_PORT=7276
SUPL_NO_SECURE_PORT=3425
SUPL_SECURE_PORT=7275
SUPL_TLS_HOST=FQDN
SUPL_TLS_CERT=/etc/SuplRootCert
# FOR C2K PDE SUPPORT, set the following
C2K_HOST=c2k.pde.com
C2K_PORT=1234
CURRENT_CARRIER=common
DEFAULT_AGPS_ENABLE=TRUE
DEFAULT_SSL_ENABLE=FALSE
# TRUE for "User Plane", FALSE for "Control Plane"
DEFAULT_USER_PLANE=TRUE
Make sure the permission of the file is rw-r--r--
4. Reboot
Go setting, turn on your "use GPS satelites" and "Integrate Google Navigation"
Restart the device (normal restart)[/B]
5. Use GPS status and Toolbox
Tool available in market for free, please donate so developers are encouraged for better release in the future[/B]
Open app> tools> manage A-GPS state>Reset
Open app> tools> manage A-GPS state>Download
Optional restart device (not compulsory)
Use GPS status to start fixing satelites
Your satelite fixing speed should VERY FAST now
After get a successul GPS Lock, open your GPS applications and use like normal (e.g. Copilot, Sygic, or TomTom)
Extra Suggestion: Please make sure your GPS is enabled before your device is turnoff or restart. It won't actually use GPS unless you open map-related app or google.com.
CAUTION!!!: DO NOT use fasterfix after this. It will overwrite all the content in gps.conf
Credits: Thanks for JMax and Vault Killer for the gps.conf file
WARNING: Please do backup before messing with your device
Do it at your own risk, I cannot be held resposible for any damage or dysfunctional of your device
Please post your feedback to let others know it works on your device model
Original thread is here...
copy pasted
http://forum.xda-developers.com/showthread.php?t=1239713
Hi everybody,
I'm developing on a Pandaboard ES. I compiled AOSP 4.0.4 and a kernel from scratch, everything working quite good so far.
As I need to connect some weird bt-devices I have to change the default bt-class.
This is what I get from hciconfig -a:
Code:
/ # hciconfig -a
hci0: Type: BR/EDR Bus: UART
BD Address: 1C:E2:XX:XX:XX:XX ACL MTU: 1021:4 SCO MTU: 180:4
UP RUNNING PSCAN
RX bytes:2148 acl:0 sco:0 events:92 errors:0
TX bytes:1472 acl:0 sco:0 commands:92 errors:0
Features: 0xff 0xfe 0x2d 0xfe 0xdb 0xff 0x7b 0x87
Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3
Link policy: RSWITCH HOLD SNIFF
Link mode: SLAVE ACCEPT
Name: 'BlueZ'
[COLOR="Red"]Class: 0x1a0000[/COLOR]
Service Classes: Networking, Capturing, Object Transfer
[COLOR="red"]Device Class: Miscellaneous, [/COLOR]
HCI Version: 4.0 (0x6) Revision: 0x0
LMP Version: 4.0 (0x6) Subversion: 0x1f22
Manufacturer: Texas Instruments Inc. (13)
By default there is no main.conf in /etc/bluetooth/. But I can find two different ones in the sources from where I'm compiling.
1: /external/bluetooth/bluez/src/main.conf
2: /system/bluetooth/data/main.conf
I modified one, pushed it to the pandaboard and rebooted, but the file is ignored. Neither the class nor the name change as expected.
Changing the class with hcitool works, but this is, of course, not permanent. (When changing the class I can connect my "weird" device without problems.)
Why is the file ignored? File owner and rights are the same as on my Nexus S. Here the file exists. (Unfortunately I can't check if its really parsed here, because it's my productive phone, so it is unrooted and stock 4.0.4)
Below you find the content of /etc/bluetooth and main.conf which I pushed to the pandaboard.
Code:
/ # ls -al /etc/bluetooth/
-r--r----- bluetooth bluetooth 1699 2012-05-11 10:31 audio.conf
-rw-r----- system system 1536 2012-05-11 10:31 auto_pairing.conf
-r--r--r-- net_bt net_bt 401 2012-05-11 10:31 blacklist.conf
-r--r----- bluetooth bluetooth 262 2012-05-11 10:31 input.conf
-r--r--r-- bluetooth bluetooth 2802 2012-06-25 09:44 main.conf
-r--r----- bluetooth bluetooth 120 2012-05-11 10:31 network.conf
PHP:
[General]
# List of plugins that should not be loaded on bluetoothd startup
#DisablePlugins = network,input
# Default adaper name
# %h - substituted for hostname
# %d - substituted for adapter id
Name = "Panda"
# Default device class. Only the major and minor device class bits are
# considered.
Class = 0x400210
# How long to stay in discoverable mode before going back to non-discoverable
# The value is in seconds. Default is 180, i.e. 3 minutes.
# 0 = disable timer, i.e. stay discoverable forever
DiscoverableTimeout = 120
# How long to stay in pairable mode before going back to non-discoverable
# The value is in seconds. Default is 0.
# 0 = disable timer, i.e. stay pairable forever
PairableTimeout = 0
# Use some other page timeout than the controller default one
# which is 16384 (10 seconds).
PageTimeout = 8192
# Discover scheduler interval used in Adapter.DiscoverDevices
# The value is in seconds. Defaults is 30.
DiscoverSchedulerInterval = 30
# What value should be assumed for the adapter Powered property when
# SetProperty(Powered, ...) hasn't been called yet. Defaults to true
InitiallyPowered = true
# Remember the previously stored Powered state when initializing adapters
RememberPowered = true
# Use vendor, product and version information for DID profile support.
# The values are separated by ":" and VID, PID and version.
DeviceID = android:generic:1.5
# Do reverse service discovery for previously unknown devices that connect to
# us. This option is really only needed for qualification since the BITE tester
# doesn't like us doing reverse SDP for some test cases (though there could in
# theory be other useful purposes for this too). Defaults to true.
ReverseServiceDiscovery = true
# Enable name resolving after inquiry. Set it to 'false' if you don't need
# remote devices name and want shorter discovery cycle. Defaults to 'true'.
NameResolving = true
# Enable runtime persistency of debug link keys. Default is false which
# makes debug link keys valid only for the duration of the connection
# that they were created for.
DebugKeys = false
# Enable Low Energy support if the dongle supports. Default is false.
# Enable/Disable interleave discovery and attribute server over LE.
EnableLE = false
# Enable the GATT Attribute Server. Default is false, because it is only
# useful for testing. Attribute server is not enabled over LE if EnableLE
# is false.
AttributeServer = false
# The link policy for connections. By default it's set to 0x000f which is
# a bitwise OR of role switch(0x0001), hold mode(0x0002), sniff mode(0x0004)
# and park state(0x0008) are all enabled. However, some devices have
# connection stability issue or fail to setup SCO when the link is in park
# state, which requires park state bit cleared.
DefaultLinkPolicy = 0x000f
bump
Nobody an idea?
Bumping this a last time as this topic is still not solved.
Any help would be great.
I also posted this on the OpenVPN forums but figured someone here may have experienced a similar problem or at least have ideas for what to do next.
My goal is to be able to connect my android phone via OpenVPN to my home network.
I started by installing OpenVPN 2.2.2
my config folder looks like this
Code:
ca.crt
dh1024.pem
server.crt
server.key
server.ovpn
My Server.ovpn contains.
Code:
# Suppose that you want to enable different
# firewall access policies for different groups
# of clients. There are two methods:
# (1) Run multiple OpenVPN daemons, one for each
# group, and firewall the TUN/TAP interface
# for each group/daemon appropriately.
# (2) (Advanced) Create a script to dynamically
# modify the firewall in response to access
# from different clients. See man
# page for more info on learn-address script.
;learn-address ./script
# If enabled, this directive will configure
# all clients to redirect their default
# network gateway through the VPN, causing
# all IP traffic such as web browsing and
# and DNS lookups to go through the VPN
# (The OpenVPN server machine may need to NAT
# or bridge the TUN/TAP interface to the internet
# in order for this to work properly).
;push "redirect-gateway def1 bypass-dhcp"
# Certain Windows-specific network settings
# can be pushed to clients, such as DNS
# or WINS server addresses. CAVEAT:
# The addresses below refer to the public
# DNS servers provided by opendns.com.
;push "dhcp-option DNS 208.67.222.222"
;push "dhcp-option DNS 208.67.220.220"
# Uncomment this directive to allow different
# clients to be able to "see" each other.
# By default, clients will only see the server.
# To force clients to only see the server, you
# will also need to appropriately firewall the
# server's TUN/TAP interface.
;client-to-client
# Uncomment this directive if multiple clients
# might connect with the same certificate/key
# files or common names. This is recommended
# only for testing purposes. For production use,
# each client should have its own certificate/key
# pair.
#
# IF YOU HAVE NOT GENERATED INDIVIDUAL
# CERTIFICATE/KEY PAIRS FOR EACH CLIENT,
# EACH HAVING ITS OWN UNIQUE "COMMON NAME",
# UNCOMMENT THIS LINE OUT.
;duplicate-cn
# The keepalive directive causes ping-like
# messages to be sent back and forth over
# the link so that each side knows when
# the other side has gone down.
# Ping every 10 seconds, assume that remote
# peer is down if no ping received during
# a 120 second time period.
keepalive 10 120
# For extra security beyond that provided
# by SSL/TLS, create an "HMAC firewall"
# to help block DoS attacks and UDP port flooding.
#
# Generate with:
# openvpn --genkey --secret ta.key
#
# The server and each client must have
# a copy of this key.
# The second parameter should be '0'
# on the server and '1' on the clients.
;tls-auth ta.key 0 # This file is secret
# Select a cryptographic cipher.
# This config item must be copied to
# the client config file as well.
;cipher BF-CBC # Blowfish (default)
;cipher AES-128-CBC # AES
;cipher DES-EDE3-CBC # Triple-DES
# Enable compression on the VPN link.
# If you enable it here, you must also
# enable it in the client config file.
comp-lzo
# The maximum number of concurrently connected
# clients we want to allow.
;max-clients 100
# It's a good idea to reduce the OpenVPN
# daemon's privileges after initialization.
#
# You can uncomment this out on
# non-Windows systems.
;user nobody
;group nobody
# The persist options will try to avoid
# accessing certain resources on restart
# that may no longer be accessible because
# of the privilege downgrade.
persist-key
persist-tun
# Output a short status file showing
# current connections, truncated
# and rewritten every minute.
status openvpn-status.log
# By default, log messages will go to the syslog (or
# on Windows, if running as a service, they will go to
# the "\Program Files\OpenVPN\log" directory).
# Use log or log-append to override this default.
# "log" will truncate the log file on OpenVPN startup,
# while "log-append" will append to it. Use one
# or the other (but not both).
;log openvpn.log
;log-append openvpn.log
# Set the appropriate level of log
# file verbosity.
#
# 0 is silent, except for fatal errors
# 4 is reasonable for general usage
# 5 and 6 can help to debug connection problems
# 9 is extremely verbose
verb 6
# Silence repeating messages. At most 20
# sequential messages of the same message
# category will be output to the log.
;mute 20
I used this to generate a .p12 for my phone.
Code:
openssl.exe pkcs12 -export -in phone.crt -inkey phone.key -certfile ca.crt -name phone -out phone.p12
My port is forwarded correctly and software firewall is disabled.
This is what I get in the log.
pastebin: gPCBwWE1
And then the connection reset by peer will simply repeat.
I have tried tcp, different ports, recreating keys and directly connecting my comp to the internet.
Any suggestions on where to go from here would be helpful.
I have tried Googling quite a bit but there isn't much out there.
Thanks.
so here's the deal. trying to start screen mirroring on a rooted device in most cases HDCP will fail to initialize, when this happens screen mirroring will connect then disconnect with an error.
after a lot of research, logging and testing on my device I have found a way to bypass HDCP and also bypass Samsung restriction on allowing screen mirroring without HDCP.
HDCP is not a requirement for screen mirroring but Samsung has programmed the s4 to fail if the HDCP connection is not initialized. I have found that when the phone speaks to the miracast dongle the phone is programmed to force the setting of "Display service Type = HDMI" instead of allowing it to connect as Type = Wifi.
when the phone forces type = HDMI it makes screen mirroring fail if HDCP fails, this is a basic and enforced protocol of HDMI, this results in screen mirroring shutting off if HDCP fails, I believe this is Samsung's attempt to stop people from rooting their phones and also to stop people from using non Samsung dongles.
some people have found ways around this by hacking the HDCP lib files, but in my case this was not possible because I own a Sgh-i337 on mf3 with a locked bootloader.
unfortunately I can't post pictures so I can post my screen mirroring logs, but heres an explanation as to how this was accomplished.
First was to quarantine all Samsung Apps & services that were related to screen mirroring, this was an attempt to get the system to fall back to the native screen mirroring services and not use samsung's implementation.
I locked up:
Com.sec.allsharecastplayer
Com.samsung.shareshot
Samsung watch on
Samsung briefing
Allshare.controlShareService
Allshare.fileShareService
Samsung context provider
All Knox
Samsung MDM app
Allshare.service.mediaShare
Samsung apps
Samsung apps UNA2
Samsung apps widget
Samsung link
Samsung push
next I tried to find out a way to edit the DisplayManagerService's forced type of HDMI to change it to Type = Wifi, unfortunately because I was on Mf3, this couldn't be done.
but I was able to force this option with a build prop edit and surprisingly after all this was done screen mirroring now works.
below I will post copies of my build prop and also the WFDConfig files from /system/ect
---- Build prop :
#
# system.prop for surf
#
rild.libpath=/system/lib/libril-qc-qmi-1.so
ro.sf.lcd_density=480
rild.libargs=-d /dev/smd0
persist.rild.nitz_plmn=
persist.rild.nitz_long_ons_0=
persist.rild.nitz_long_ons_1=
persist.rild.nitz_long_ons_2=
persist.rild.nitz_long_ons_3=
persist.rild.nitz_short_ons_0=
persist.rild.nitz_short_ons_1=
persist.rild.nitz_short_ons_2=
persist.rild.nitz_short_ons_3=
ril.subscription.types=NV,RUIM
DEVICE_PROVISIONED=1
debug.sf.hw=0
debug.composition.7x27A.type=mdp
debug.composition.7x25A.type=mdp
dalvik.vm.heapsize=24m
debug.composition.type=dyn
persist.hwc.mdpcomp.enable=false
service.camera.gpu.enable=0
Debug.Disable.HWC=1
debug.sf.disablehwc=1
ro.display.switch=0
#dyn
# system props for the cne module
#
persist.cne.feature=0
#
# system props for the MM modules
#
media.stagefright.enable-player=true
media.stagefright.enable-meta=true
media.stagefright.enable-scan=true
media.stagefright.enable-http=false
media.stagefright.enable-fma2dp=true
media.stagefright.enable-aac=true
media.stagefright.enable-qcp=true
media.enable-commonsource=true
media.stagefright.enable-rtsp=true
#
# system props for the LPA/TUNNEL
#
lpa.decode=true
tunnel.decode=true
lpa.use-stagefright=true
tunnel.audiovideo.decode=true
#
# system prop for opengles version
#
ro.opengles.version=131072
#
# system props for the data modules
#
ro.use_data_netmgrd=true
persist.data.ds_fmc_app.mode=0
#
# system props for IMS module
#
persist.ims.regmanager.mode=0
#
# system prop for requesting Master role in incoming Bluetooth connection.
#
ro.bluetooth.request.master=true
#
# system prop for Bluetooth FTP profile
#
ro.qualcomm.bluetooth.ftp=true
#
# system prop for Bluetooth SAP profile
#
ro.qualcomm.bluetooth.sap=true
#
# system prop for Bluetooth Auto connect for remote initated connections
#
ro.bluetooth.remote.autoconnect=true
#
#system property for Bluetooth discoverability timeout in seconds
#0: Always discoverable
#debug.bt.discoverable_time=0
#
# System prop to disable strict mode flash on display
#
persist.sys.strictmode.visual=false
#
# System prop to enable/disable OMH. Enabled by default
#
persist.omh.enabled=1
#System prop to enable ehrpd capability
ro.config.ehrpd=true
# System property for cabl
ro.qualcomm.cabl=0
#
#System prop to determine availability of
#analog fm path
#
ro.fm.analogpath.supported=true
#
#System property for FM transmitter
#
ro.fm.transmitter=false
#
#System property for single instance recording
#
ro.fm.mulinst.recording.support=false
#
#System property for msm
#
ro.hw_plat=7x27a
#
# system props for SD card emulation of emmc partition
#
ro.emmc.sdcard.partition=18
#
# system property to enforce Phone Mode view
#
ro.screen.layout=normal
#
# Turn off tiled rendering
#
debug.enabletr=false
#
#System prop for setting the pixel format
#
ro.staticwallpaper.pixelformat=RGB_565
#
#System prop for disabling the meta data mode for encoder
#
debug.camcorder.disablemeta=1
#
# Simulate sdcard on /data/media
#
persist.fuse_sdcard=true
#
# System prop for using landscape preview layout in camera
#
debug.camera.landscape=true
#
# System prop for capping scroll velocity
#
ro.max.fling_velocity=8000
#
#system prop for Bluetooth hci transport
#
ro.qualcomm.bt.hci_transport=smd
#
#property to enable user to access Google WFD settings.
#
persist.debug.wfd.enable=1
debug.wfd.enable=1
ext_only.debug=1
persist.sys.ext_only.debug=1
persist.sys.hwc.ext_only.debug=1
persist.sys.hwc.disable=1
#property to choose between virtual/external wfd display
#
persist.sys.wfd.virtual=0
#
# System prop for Tvout/HDMI
#
persist.sys.camera.transform=0
persist.sys.camera.connect=0
persist.sys.videomode=1
ro.hdmi.enable=false
# System proverty for sys info indication
persist.radio.add_power_save=1
# System property for Default Brightness
ro.lcd_min_brightness=10
ro.lcd_brightness=143
# Keep SIM state on LPM mode
persist.radio.apm_sim_not_pwdn=1
# use se table when search list
persist.radio.use_se_table_only=1
# System prop for PLMN
persist.radio.fill_eons=1
#
# ADDITIONAL_BUILD_PROPERTIES
#
dalvik.vm.heapstartsize=8m
dalvik.vm.heapgrowthlimit=128m
dalvik.vm.heapsize=512m
dalvik.vm.heaputilization=0.25
dalvik.vm.heapidealfree=8388608
dalvik.vm.heapconcurrentstart=2097152
ro.vendor.extension_library=/system/lib/libqc-opt.so
dalvik.vm.heaptargetutilization=0.75
dalvik.vm.heapminfree=512k
dalvik.vm.heapmaxfree=8m
ro.hwui.texture_cache_size=48
ro.hwui.layer_cache_size=32
ro.hwui.path_cache_size=8
ro.hwui.shape_cache_size=2
ro.hwui.gradient_cache_size=1
ro.hwui.drop_shadow_cache_size=4
ro.hwui.texture_cache_flush_rate=0.5
ro.hwui.text_small_cache_width=1024
ro.hwui.text_small_cache_height=512
ro.hwui.text_large_cache_width=2048
ro.hwui.text_large_cache_height=1024
ro.sec.fle.encryption=true
ro.hdcp2.rx=tz
ro.secwvk=144
ro.crypto.support=recovery_mount|others
ro.config.alarm_alert=Alarm_Morning_flower.ogg
ro.config.ringtone=ATT_Firefly_Default.ogg
ro.config.notification_sound=Whisper.ogg
ro.monkey=0
ro.error.receiver.default=com.samsung.receiver.error
keyguard.no_require_sim=true
ro.com.android.dateformat=MM-dd-yyyy
ro.carrier=unknown
ro.ril.hsxpa=1
ro.ril.gprsclass=10
ro.adb.qemud=1
ro.setupwizard.mode=DISABLED
ro.com.google.apphider=off
ro.com.google.clientidbase=android-samsung
ro.com.google.clientidbase.ms=android-att-us
ro.com.google.clientidbase.am=android-att-us
ro.com.google.clientidbase.yt=android-samsung
ro.com.google.clientidbase.gmm=android-samsung
ro.com.google.gmsversion=4.2_r2
ro.kernel.qemu=0
ro.build.selinux=1
ro.config.tima=1
net.bt.name=Android
dalvik.vm.stack-trace-file=/data/anr/traces.txt
ro.qc.sdk.izat.premium_enabled=0
persist.gps.qc_nlp_in_use=0
--- WFDConfig. Xml
<WFDConfig>
<Capability>
<AudioLPCM>
<Name>LPCM</Name>
<Valid>1</Valid>
<Channels>2</Channels>
<SamplingFreq>48000</SamplingFreq>
<Latency>33</Latency>
</AudioLPCM>
<AudioAAC>
<Name>AAC</Name>
<Valid>1</Valid>
<Channels>2</Channels>
<SamplingFreq>48000</SamplingFreq>
<Latency>0</Latency>
</AudioAAC>
<AudioAC3>
<Name>AC3</Name>
<Valid>0</Valid>
<Channels>0</Channels>
<SamplingFreq>0</SamplingFreq>
<Latency>0</Latency>
</AudioAC3>
<VideoHeader>
<VideoMethod>1</VideoMethod>
<PreferredDisplaySupport>0</PreferredDisplaySupport>
<H264Profiles>1</H264Profiles>
<Valid>1</Valid>
</VideoHeader>
<CBP>
<VideoCodec>
<Profile>1</Profile>
<Level>1</Level>
<HorizontalResolution>1280</HorizontalResolution>
<VerticalResolution>720</VerticalResolution>
<Latency>0</Latency>
<MinimumSliceSize>0</MinimumSliceSize>
<SliceEncodingParams>0</SliceEncodingParams>
<FrameRateControlSupp>1</FrameRateControlSupp>
<VideoFps>30</VideoFps>
</VideoCodec>
</CBP>
<StandbyResumeCapability>
<Valid>1</Valid>
</StandbyResumeCapability>
<!--
IDR interval is to trigger an IDR request from sink.
This can be applcable only to sink. IDRInterval is in msec
-->
<IDRRequest>
<Valid>0</Valid>
<IDRInterval>0</IDRInterval>
</IDRRequest>
<AVFormatChange>
<Valid>0</Valid>
<AVInterval>0</AVInterval>
</AVFormatChange>
<!--
Frame skipping interval is in the scale of 500 msec/half second.
FrameInterval can be between 1 to 7, according to the WFD spec.
-->
<FrameSkipping>
<Valid>0</Valid>
<FrameInterval>0</FrameInterval>
</FrameSkipping>
<ContentProtection>
<HDCPValid>0</HDCPValid>
<Version>WFD_HDCP_2_1</Version> <!-- Valid values WFD_HDCP_2_0 and WFD_HDCP_2_1 -->
<CPPort>6789</CPPort>
<EncryptAudio>0</EncryptAudio> <!-- Valid values 0 / 1 to indicate Audio encryption or not -->
</ContentProtection>
<RTPDumpEnable>
<Valid>0</Valid>
</RTPDumpEnable>
<BufferCtrlEnable>
<Valid>1</Valid>
</BufferCtrlEnable>
<UIBC>
<UIBCValid>1</UIBCValid> <!-- 0/1 UIBC supported or not -->
<InputCategory>
<Generic>1</Generic> <!-- 0/1 - support generic or not -->
</InputCategory>
<InputEvents>
<GenericInputEvents>
<Mouse>1</Mouse> <!-- 0/1 for all Input Event Types -->
<Keyboard>1</Keyboard>
<SingleTouch>1</SingleTouch>
<MultiTouch>1</MultiTouch>
<JoyStick>0</JoyStick>
<Camera>0</Camera>
<Gesture>0</Gesture>
<RemoteControl>1</RemoteControl>
</GenericInputEvents>
</InputEvents>
<TcpPort>4321</TcpPort>
</UIBC>
</Capability>
---- Compatibility. Xml
<Capability>
<AudioLPCM>
<Name>LPCM</Name>
<Valid>1</Valid>
<Channels>2</Channels>
<SamplingFreq>48000</SamplingFreq>
<Latency>33</Latency>
</AudioLPCM>
<AudioAAC>
<Name>AAC</Name>
<Valid>1</Valid>
<Channels>2</Channels>
<SamplingFreq>48000</SamplingFreq>
<Latency>0</Latency>
</AudioAAC>
<AudioAC3>
<Name>AC3</Name>
<Valid>0</Valid>
<Channels>0</Channels>
<SamplingFreq>0</SamplingFreq>
<Latency>0</Latency>
</AudioAC3>
<VideoHeader>
<VideoMethod>1</VideoMethod>
<PreferredDisplaySupport>0</PreferredDisplaySupport>
<H264Profiles>1</H264Profiles>
<Valid>1</Valid>
</VideoHeader>
<CBP>
<VideoCodec>
<Profile>1</Profile>
<Level>1</Level>
<HorizontalResolution>1280</HorizontalResolution>
<VerticalResolution>720</VerticalResolution>
<Latency>0</Latency>
<MinimumSliceSize>0</MinimumSliceSize>
<SliceEncodingParams>0</SliceEncodingParams>
<FrameRateControlSupp>1</FrameRateControlSupp>
<VideoFps>30</VideoFps>
</VideoCodec>
</CBP>
<CHP>
<VideoCodec>
<Profile>2</Profile>
<Level>1</Level>
<HorizontalResolution>800</HorizontalResolution>
<VerticalResolution>480</VerticalResolution>
<Latency>0</Latency>
<MinimumSliceSize>0</MinimumSliceSize>
<SliceEncodingParams>0</SliceEncodingParams>
<FrameRateControlSupp>1</FrameRateControlSupp>
<VideoFps>30</VideoFps>
</VideoCodec>
</CHP>
<StandbyResumeCapability>
<Valid>1</Valid>
</StandbyResumeCapability>
<!--
IDR interval is to trigger an IDR request from sink.
This can be applcable only to sink. IDRInterval is in msec
-->
<IDRRequest>
<Valid>0</Valid>
<IDRInterval>0</IDRInterval>
</IDRRequest>
<AVFormatChange>
<Valid>0</Valid>
<AVInterval>0</AVInterval>
</AVFormatChange>
<!--
Frame skipping interval is in the scale of 500 msec/half second.
FrameInterval can be between 1 to 7, according to the WFD spec.
-->
<FrameSkipping>
<Valid>0</Valid>
<FrameInterval>0</FrameInterval>
</FrameSkipping>
<ContentProtection>
<HDCPValid>0</HDCPValid>
<Version>WFD_HDCP_2_1</Version> <!-- Valid values WFD_HDCP_2_0 and WFD_HDCP_2_1 -->
<CPPort>6789</CPPort>
</ContentProtection>
<RTPPortType>
<ConnectionType>0</ConnectionType> <!-- 0 - UDP ,1 - TCP -->
</RTPPortType>
<RTPDumpEnable>
<Valid>0</Valid> <!-- Enable RTP Dump Valid = 1 or Valid = 0-->
</RTPDumpEnable>
<UIBC>
<UIBCValid>0</UIBCValid> <!-- 0/1 UIBC supported or not -->
<InputCategory>
<Generic>1</Generic> <!-- 0/1 - support generic or not -->
</InputCategory>
<InputEvents>
<GenericInputEvents>
<Mouse>1</Mouse> <!-- 0/1 for all Input Event Types -->
<Keyboard>1</Keyboard>
<SingleTouch>1</SingleTouch>
<MultiTouch>1</MultiTouch>
<JoyStick>1</JoyStick>
<Camera>0</Camera>
<Gesture>0</Gesture>
<RemoteControl>1</RemoteControl>
</GenericInputEvents>
</InputEvents>
<TcpPort>4321</TcpPort>
</UIBC>
</Capability>
I claim no responsibility for you changing files on your own phone, this fixed took me about a month of constant work and if you change the wrong files it may brick your phone.
If ive helped you fix screen mirroring
And you would like to thank me.... buy me a coffee
PayPal: [email protected]
How about posting just the changes?
Sent from my GT-I9505 using Tapatalk
Thanks bro but ...
Sorry but works is already done by the master Sorg ^^
http://forum.xda-developers.com/showthread.php?t=2621550
look at that : (by mrmrmrmr not by me ^^)
Here is a short description of steps to follow if you want to do the same for other devices:
1. download and install IDA Pro
2. download and install WinHEx
3. download and install any text compare util
4. Open patched and unpatched version lib file of the same device (any device) with IDA
5. get text output of both files to the text compare utility
6. find the 3 differences. analyze where they are in the file (look for seacrhable text patterns)
7. open YOUR device's unpacthed lib file with IDA pro
8. find the correspondances found on step 6 in your own file.
9. note the line number (hex address) of each 3 correspondances
10. now open all 3 files on Winhex
11. jump to the noted hex addresses and change the bytes according to the difference of 2 files of the same device.
12. make the change on your own file and save.
So to do it you have to install 4.4.2 and look libWFD into and change it ^^, i got i9500 MBC, when 4.4.2 MBC will be in the place, i will try to do it, but thats look a little hard for a noob like me ^^ So if you want to do it on the 4.4.2 I9500XXUFNB3 russian, you are welcome
---------- Post added at 01:51 PM ---------- Previous post was at 01:46 PM ----------
androidrouen said:
Sorry but works is already done by the master Sorg ^^
http://forum.xda-developers.com/showthread.php?t=2621550
look at that : (by mrmrmrmr not by me ^^)
Here is a short description of steps to follow if you want to do the same for other devices:
1. download and install IDA Pro
2. download and install WinHEx
3. download and install any text compare util
4. Open patched and unpatched version lib file of the same device (any device) with IDA
5. get text output of both files to the text compare utility
6. find the 3 differences. analyze where they are in the file (look for seacrhable text patterns)
7. open YOUR device's unpacthed lib file with IDA pro
8. find the correspondances found on step 6 in your own file.
9. note the line number (hex address) of each 3 correspondances
10. now open all 3 files on Winhex
11. jump to the noted hex addresses and change the bytes according to the difference of 2 files of the same device.
12. make the change on your own file and save.
So to do it you have to install 4.4.2 and look libWFD into and change it ^^, i got i9500 MBC, when 4.4.2 MBC will be in the place, i will try to do it, but thats look a little hard for a noob like me ^^ So if you want to do it on the 4.4.2 I9500XXUFNB3 russian, you are welcome
Click to expand...
Click to collapse
I didn t see you got a locked bootloader !!!!!!!!!!!!! SORRY :crying:
I was just about to say that I said its already been done by hacking libs... but yea, that wont work for those of us with locked bootloaders
Any fix available for i9500 on 4.4.2 ?
Sent from my GT-I9500 using XDA Premium 4 mobile app
thx 4 that!
Screen Mirroring restored on rooted S4 (19500) 4.4.2
rkadve said:
Any fix available for i9500 on 4.4.2 ?
Sent from my GT-I9500 using XDA Premium 4 mobile app
Click to expand...
Click to collapse
DjeMBey has a working method. See this thread:
http://forum.xda-developers.com/showthread.php?t=2255190
I flashed the provided OFFICIAL STATUS MOD file via Odin & then used Wanam Xposed to 'fake system status'. This changed my Binary status to official & screen mirroring is now working. On my rooted S4 (I9500) on 4.4.2 (19500XXUFNA6). Try it & let us know if it works for you ?
Sound mirrors, yet screen wont mirror
Hello,
I recently stumbled onto your post and am having a little trouble getting the screen mirroring to work on my rooted SGH-I337 to Miracast. I have followed your instructions and have gotten the pesky little hdcp message on the screen to go away, yet I only get audio on my tv and no picture, just a black screen. I really do not want to unroot my phone to get this working, due to me being on a custom SGH-M919 rom on my SGH-I337.
I followed the instructions on this post to flash the custom rom using Safestrap.
http://forum.xda-developers.com/galaxy-s4-att/general/convert-i337-to-m919-wifi-caling-t2896719
I can reply with copies of my build prop, wfd config, and capability files if necessary. I also read the replies on this post and added the wlan.wfd.hcdp=disable yet have no screen mirror, just audio mirror. Have you heard of this before? I feel that some line of code may be missing in one of these files.
Im using Tomi buid.prop editor to edit my build prop and es file explorer to edit the wfd and capability xml files.
Plz Help!
xxjomamaxx said:
so here's the deal. trying to start screen mirroring on a rooted device in most cases HDCP will fail to initialize, when this happens screen mirroring will connect then disconnect with an error.
after a lot of research, logging and testing on my device I have found a way to bypass HDCP and also bypass Samsung restriction on allowing screen mirroring without HDCP.
HDCP is not a requirement for screen mirroring but Samsung has programmed the s4 to fail if the HDCP connection is not initialized. I have found that when the phone speaks to the miracast dongle the phone is programmed to force the setting of "Display service Type = HDMI" instead of allowing it to connect as Type = Wifi.
when the phone forces type = HDMI it makes screen mirroring fail if HDCP fails, this is a basic and enforced protocol of HDMI, this results in screen mirroring shutting off if HDCP fails, I believe this is Samsung's attempt to stop people from rooting their phones and also to stop people from using non Samsung dongles.
some people have found ways around this by hacking the HDCP lib files, but in my case this was not possible because I own a Sgh-i337 on mf3 with a locked bootloader.
unfortunately I can't post pictures so I can post my screen mirroring logs, but heres an explanation as to how this was accomplished.
First was to quarantine all Samsung Apps & services that were related to screen mirroring, this was an attempt to get the system to fall back to the native screen mirroring services and not use samsung's implementation.
I locked up:
Com.sec.allsharecastplayer
Com.samsung.shareshot
Samsung watch on
Samsung briefing
Allshare.controlShareService
Allshare.fileShareService
Samsung context provider
All Knox
Samsung MDM app
Allshare.service.mediaShare
Samsung apps
Samsung apps UNA2
Samsung apps widget
Samsung link
Samsung push
next I tried to find out a way to edit the DisplayManagerService's forced type of HDMI to change it to Type = Wifi, unfortunately because I was on Mf3, this couldn't be done.
but I was able to force this option with a build prop edit and surprisingly after all this was done screen mirroring now works.
below I will post copies of my build prop and also the WFDConfig files from /system/ect
---- Build prop :
#
# system.prop for surf
#
rild.libpath=/system/lib/libril-qc-qmi-1.so
ro.sf.lcd_density=480
rild.libargs=-d /dev/smd0
persist.rild.nitz_plmn=
persist.rild.nitz_long_ons_0=
persist.rild.nitz_long_ons_1=
persist.rild.nitz_long_ons_2=
persist.rild.nitz_long_ons_3=
persist.rild.nitz_short_ons_0=
persist.rild.nitz_short_ons_1=
persist.rild.nitz_short_ons_2=
persist.rild.nitz_short_ons_3=
ril.subscription.types=NV,RUIM
DEVICE_PROVISIONED=1
debug.sf.hw=0
debug.composition.7x27A.type=mdp
debug.composition.7x25A.type=mdp
dalvik.vm.heapsize=24m
debug.composition.type=dyn
persist.hwc.mdpcomp.enable=false
service.camera.gpu.enable=0
Debug.Disable.HWC=1
debug.sf.disablehwc=1
ro.display.switch=0
#dyn
# system props for the cne module
#
persist.cne.feature=0
#
# system props for the MM modules
#
media.stagefright.enable-player=true
media.stagefright.enable-meta=true
media.stagefright.enable-scan=true
media.stagefright.enable-http=false
media.stagefright.enable-fma2dp=true
media.stagefright.enable-aac=true
media.stagefright.enable-qcp=true
media.enable-commonsource=true
media.stagefright.enable-rtsp=true
#
# system props for the LPA/TUNNEL
#
lpa.decode=true
tunnel.decode=true
lpa.use-stagefright=true
tunnel.audiovideo.decode=true
#
# system prop for opengles version
#
ro.opengles.version=131072
#
# system props for the data modules
#
ro.use_data_netmgrd=true
persist.data.ds_fmc_app.mode=0
#
# system props for IMS module
#
persist.ims.regmanager.mode=0
#
# system prop for requesting Master role in incoming Bluetooth connection.
#
ro.bluetooth.request.master=true
#
# system prop for Bluetooth FTP profile
#
ro.qualcomm.bluetooth.ftp=true
#
# system prop for Bluetooth SAP profile
#
ro.qualcomm.bluetooth.sap=true
#
# system prop for Bluetooth Auto connect for remote initated connections
#
ro.bluetooth.remote.autoconnect=true
#
#system property for Bluetooth discoverability timeout in seconds
#0: Always discoverable
#debug.bt.discoverable_time=0
#
# System prop to disable strict mode flash on display
#
persist.sys.strictmode.visual=false
#
# System prop to enable/disable OMH. Enabled by default
#
persist.omh.enabled=1
#System prop to enable ehrpd capability
ro.config.ehrpd=true
# System property for cabl
ro.qualcomm.cabl=0
#
#System prop to determine availability of
#analog fm path
#
ro.fm.analogpath.supported=true
#
#System property for FM transmitter
#
ro.fm.transmitter=false
#
#System property for single instance recording
#
ro.fm.mulinst.recording.support=false
#
#System property for msm
#
ro.hw_plat=7x27a
#
# system props for SD card emulation of emmc partition
#
ro.emmc.sdcard.partition=18
#
# system property to enforce Phone Mode view
#
ro.screen.layout=normal
#
# Turn off tiled rendering
#
debug.enabletr=false
#
#System prop for setting the pixel format
#
ro.staticwallpaper.pixelformat=RGB_565
#
#System prop for disabling the meta data mode for encoder
#
debug.camcorder.disablemeta=1
#
# Simulate sdcard on /data/media
#
persist.fuse_sdcard=true
#
# System prop for using landscape preview layout in camera
#
debug.camera.landscape=true
#
# System prop for capping scroll velocity
#
ro.max.fling_velocity=8000
#
#system prop for Bluetooth hci transport
#
ro.qualcomm.bt.hci_transport=smd
#
#property to enable user to access Google WFD settings.
#
persist.debug.wfd.enable=1
debug.wfd.enable=1
ext_only.debug=1
persist.sys.ext_only.debug=1
persist.sys.hwc.ext_only.debug=1
persist.sys.hwc.disable=1
#property to choose between virtual/external wfd display
#
persist.sys.wfd.virtual=0
#
# System prop for Tvout/HDMI
#
persist.sys.camera.transform=0
persist.sys.camera.connect=0
persist.sys.videomode=1
ro.hdmi.enable=false
# System proverty for sys info indication
persist.radio.add_power_save=1
# System property for Default Brightness
ro.lcd_min_brightness=10
ro.lcd_brightness=143
# Keep SIM state on LPM mode
persist.radio.apm_sim_not_pwdn=1
# use se table when search list
persist.radio.use_se_table_only=1
# System prop for PLMN
persist.radio.fill_eons=1
#
# ADDITIONAL_BUILD_PROPERTIES
#
dalvik.vm.heapstartsize=8m
dalvik.vm.heapgrowthlimit=128m
dalvik.vm.heapsize=512m
dalvik.vm.heaputilization=0.25
dalvik.vm.heapidealfree=8388608
dalvik.vm.heapconcurrentstart=2097152
ro.vendor.extension_library=/system/lib/libqc-opt.so
dalvik.vm.heaptargetutilization=0.75
dalvik.vm.heapminfree=512k
dalvik.vm.heapmaxfree=8m
ro.hwui.texture_cache_size=48
ro.hwui.layer_cache_size=32
ro.hwui.path_cache_size=8
ro.hwui.shape_cache_size=2
ro.hwui.gradient_cache_size=1
ro.hwui.drop_shadow_cache_size=4
ro.hwui.texture_cache_flush_rate=0.5
ro.hwui.text_small_cache_width=1024
ro.hwui.text_small_cache_height=512
ro.hwui.text_large_cache_width=2048
ro.hwui.text_large_cache_height=1024
ro.sec.fle.encryption=true
ro.hdcp2.rx=tz
ro.secwvk=144
ro.crypto.support=recovery_mount|others
ro.config.alarm_alert=Alarm_Morning_flower.ogg
ro.config.ringtone=ATT_Firefly_Default.ogg
ro.config.notification_sound=Whisper.ogg
ro.monkey=0
ro.error.receiver.default=com.samsung.receiver.error
keyguard.no_require_sim=true
ro.com.android.dateformat=MM-dd-yyyy
ro.carrier=unknown
ro.ril.hsxpa=1
ro.ril.gprsclass=10
ro.adb.qemud=1
ro.setupwizard.mode=DISABLED
ro.com.google.apphider=off
ro.com.google.clientidbase=android-samsung
ro.com.google.clientidbase.ms=android-att-us
ro.com.google.clientidbase.am=android-att-us
ro.com.google.clientidbase.yt=android-samsung
ro.com.google.clientidbase.gmm=android-samsung
ro.com.google.gmsversion=4.2_r2
ro.kernel.qemu=0
ro.build.selinux=1
ro.config.tima=1
net.bt.name=Android
dalvik.vm.stack-trace-file=/data/anr/traces.txt
ro.qc.sdk.izat.premium_enabled=0
persist.gps.qc_nlp_in_use=0
--- WFDConfig. Xml
<WFDConfig>
<Capability>
<AudioLPCM>
<Name>LPCM</Name>
<Valid>1</Valid>
<Channels>2</Channels>
<SamplingFreq>48000</SamplingFreq>
<Latency>33</Latency>
</AudioLPCM>
<AudioAAC>
<Name>AAC</Name>
<Valid>1</Valid>
<Channels>2</Channels>
<SamplingFreq>48000</SamplingFreq>
<Latency>0</Latency>
</AudioAAC>
<AudioAC3>
<Name>AC3</Name>
<Valid>0</Valid>
<Channels>0</Channels>
<SamplingFreq>0</SamplingFreq>
<Latency>0</Latency>
</AudioAC3>
<VideoHeader>
<VideoMethod>1</VideoMethod>
<PreferredDisplaySupport>0</PreferredDisplaySupport>
<H264Profiles>1</H264Profiles>
<Valid>1</Valid>
</VideoHeader>
<CBP>
<VideoCodec>
<Profile>1</Profile>
<Level>1</Level>
<HorizontalResolution>1280</HorizontalResolution>
<VerticalResolution>720</VerticalResolution>
<Latency>0</Latency>
<MinimumSliceSize>0</MinimumSliceSize>
<SliceEncodingParams>0</SliceEncodingParams>
<FrameRateControlSupp>1</FrameRateControlSupp>
<VideoFps>30</VideoFps>
</VideoCodec>
</CBP>
<StandbyResumeCapability>
<Valid>1</Valid>
</StandbyResumeCapability>
<!--
IDR interval is to trigger an IDR request from sink.
This can be applcable only to sink. IDRInterval is in msec
-->
<IDRRequest>
<Valid>0</Valid>
<IDRInterval>0</IDRInterval>
</IDRRequest>
<AVFormatChange>
<Valid>0</Valid>
<AVInterval>0</AVInterval>
</AVFormatChange>
<!--
Frame skipping interval is in the scale of 500 msec/half second.
FrameInterval can be between 1 to 7, according to the WFD spec.
-->
<FrameSkipping>
<Valid>0</Valid>
<FrameInterval>0</FrameInterval>
</FrameSkipping>
<ContentProtection>
<HDCPValid>0</HDCPValid>
<Version>WFD_HDCP_2_1</Version> <!-- Valid values WFD_HDCP_2_0 and WFD_HDCP_2_1 -->
<CPPort>6789</CPPort>
<EncryptAudio>0</EncryptAudio> <!-- Valid values 0 / 1 to indicate Audio encryption or not -->
</ContentProtection>
<RTPDumpEnable>
<Valid>0</Valid>
</RTPDumpEnable>
<BufferCtrlEnable>
<Valid>1</Valid>
</BufferCtrlEnable>
<UIBC>
<UIBCValid>1</UIBCValid> <!-- 0/1 UIBC supported or not -->
<InputCategory>
<Generic>1</Generic> <!-- 0/1 - support generic or not -->
</InputCategory>
<InputEvents>
<GenericInputEvents>
<Mouse>1</Mouse> <!-- 0/1 for all Input Event Types -->
<Keyboard>1</Keyboard>
<SingleTouch>1</SingleTouch>
<MultiTouch>1</MultiTouch>
<JoyStick>0</JoyStick>
<Camera>0</Camera>
<Gesture>0</Gesture>
<RemoteControl>1</RemoteControl>
</GenericInputEvents>
</InputEvents>
<TcpPort>4321</TcpPort>
</UIBC>
</Capability>
---- Compatibility. Xml
<Capability>
<AudioLPCM>
<Name>LPCM</Name>
<Valid>1</Valid>
<Channels>2</Channels>
<SamplingFreq>48000</SamplingFreq>
<Latency>33</Latency>
</AudioLPCM>
<AudioAAC>
<Name>AAC</Name>
<Valid>1</Valid>
<Channels>2</Channels>
<SamplingFreq>48000</SamplingFreq>
<Latency>0</Latency>
</AudioAAC>
<AudioAC3>
<Name>AC3</Name>
<Valid>0</Valid>
<Channels>0</Channels>
<SamplingFreq>0</SamplingFreq>
<Latency>0</Latency>
</AudioAC3>
<VideoHeader>
<VideoMethod>1</VideoMethod>
<PreferredDisplaySupport>0</PreferredDisplaySupport>
<H264Profiles>1</H264Profiles>
<Valid>1</Valid>
</VideoHeader>
<CBP>
<VideoCodec>
<Profile>1</Profile>
<Level>1</Level>
<HorizontalResolution>1280</HorizontalResolution>
<VerticalResolution>720</VerticalResolution>
<Latency>0</Latency>
<MinimumSliceSize>0</MinimumSliceSize>
<SliceEncodingParams>0</SliceEncodingParams>
<FrameRateControlSupp>1</FrameRateControlSupp>
<VideoFps>30</VideoFps>
</VideoCodec>
</CBP>
<CHP>
<VideoCodec>
<Profile>2</Profile>
<Level>1</Level>
<HorizontalResolution>800</HorizontalResolution>
<VerticalResolution>480</VerticalResolution>
<Latency>0</Latency>
<MinimumSliceSize>0</MinimumSliceSize>
<SliceEncodingParams>0</SliceEncodingParams>
<FrameRateControlSupp>1</FrameRateControlSupp>
<VideoFps>30</VideoFps>
</VideoCodec>
</CHP>
<StandbyResumeCapability>
<Valid>1</Valid>
</StandbyResumeCapability>
<!--
IDR interval is to trigger an IDR request from sink.
This can be applcable only to sink. IDRInterval is in msec
-->
<IDRRequest>
<Valid>0</Valid>
<IDRInterval>0</IDRInterval>
</IDRRequest>
<AVFormatChange>
<Valid>0</Valid>
<AVInterval>0</AVInterval>
</AVFormatChange>
<!--
Frame skipping interval is in the scale of 500 msec/half second.
FrameInterval can be between 1 to 7, according to the WFD spec.
-->
<FrameSkipping>
<Valid>0</Valid>
<FrameInterval>0</FrameInterval>
</FrameSkipping>
<ContentProtection>
<HDCPValid>0</HDCPValid>
<Version>WFD_HDCP_2_1</Version> <!-- Valid values WFD_HDCP_2_0 and WFD_HDCP_2_1 -->
<CPPort>6789</CPPort>
</ContentProtection>
<RTPPortType>
<ConnectionType>0</ConnectionType> <!-- 0 - UDP ,1 - TCP -->
</RTPPortType>
<RTPDumpEnable>
<Valid>0</Valid> <!-- Enable RTP Dump Valid = 1 or Valid = 0-->
</RTPDumpEnable>
<UIBC>
<UIBCValid>0</UIBCValid> <!-- 0/1 UIBC supported or not -->
<InputCategory>
<Generic>1</Generic> <!-- 0/1 - support generic or not -->
</InputCategory>
<InputEvents>
<GenericInputEvents>
<Mouse>1</Mouse> <!-- 0/1 for all Input Event Types -->
<Keyboard>1</Keyboard>
<SingleTouch>1</SingleTouch>
<MultiTouch>1</MultiTouch>
<JoyStick>1</JoyStick>
<Camera>0</Camera>
<Gesture>0</Gesture>
<RemoteControl>1</RemoteControl>
</GenericInputEvents>
</InputEvents>
<TcpPort>4321</TcpPort>
</UIBC>
</Capability>
I claim no responsibility for you changing files on your own phone, this fixed took me about a month of constant work and if you change the wrong files it may brick your phone.
If ive helped you fix screen mirroring
And you would like to thank me.... buy me a coffee
PayPal: [email protected]
Click to expand...
Click to collapse
what are the changes exactly?