[Galaxy Note 3 Android Development] Jayy_Suave:
It might just be the proximity sensor. I had the same issue before on my T-Mobile variant. I honestly don't know what "broke" it (it wasn't broke at all, because in the test menu it showed that it was still active), but I have a strong feeling it came from flashing a bad ROM. So, let's troubleshoot and hopefully get this thing working again, shall we?

1) Go to your dialing screen and dial *#0*# you will this screen.

2) Touch the sensor button and you should see that all of the sensor values are showing very fast changes in real time. Now, how do we test the proximity sensor? You test by placing your hand or finger on top of your phone where the proximity sensor is and you will see the proximity sensor value change, the screen will turn green and the phone will start vibrating.

Now, move your finger away from the sensor and if you see no change (the screen is still green, the phone is still vibrating) that means that your sensor isn't working as it should.

Normal behaviour is when you move your fingers away from the sensor it should change the screen colour back to it's original color and stop vibrating.

3) What could possibly be the issue? Well one possibility is your proximity sensor is not protected properly from dust. If you blow compressed air into your earpiece it should solve the problem, but this is not a permanent fix as you'll need to repeat this every few days. This also can damage your earpiece.

Dust could be the major issue due to the sensitivity of this sensor. We all know that we activate the sensor by putting the phone to our ears and when we remove it from our ears the proximity sensor is supposed to change. But in your case it doesn't. If you look at the your screen (the sensor screen), you'll find, under proximity sensor, something like

"ADC: 83(81, 82, 85)" (without the quotes).

These are the different values:

When sensor is active the ADC value would be around ADC: 1004 (1000,1000,1000)

When sensor is not active the ADC value will be around ADC: 0 (5,45,78)

When there's dust detected on the sensor the ADC value will be around ADC: 84 (85,90,150)

Note: The values may differ from phone to phone, but don't worry about it.

Fixing the Sensor Problem:

Now, there are two solutions we can use. For these solutions your phone must be rooted.

Solution 1: (scenario) In the phone sensor testing area (the green screen), if you put your finger on the sensor and your phone is continues vibrating no matter if you put your finger on the sensor or not, follow these steps:

1. You need Android Terminal from the Play Store.

2. You need to calibrate the sensor automatically, so type these commands in the terminal:

$ su

# echo 0 > /sys/devices/virtual/sensors/proximity_sensor/prox_cal

# echo 1 > /sys/devices/virtual/sensors/proximity_sensor/prox_cal

Now reboot your phone and use Samsung command *#0*# and check if it continuously vibrates while showing you the same green screen or if it's only vibrating when you put your finger on the sensor. If it vibrates when you put your finger on the sensor, this means you are good. But (there's almost always a but), if it’s not working as expected you'll need to try the next solution.

Solution 2: You'll have to set the values manually in your /efs/prox_cal file. This file only reads Hexadecimal values, so you'll need to convert your decimal values into Hexadecimal values.

Here's how you find your decimal values and set them into /efs/prox_cal:

You will need to find two values using a formula for calibrating the sensor again.

The formula is:

X = offset value + normal value.

How do you find the offset value? Here's the method. Enter:

# cat /sys/devices/virtual/sensors/proximity_sensor/prox_cal

The values that return from this file may differ from phone to phone. For instance, my phone value is 0,120,80

Now, the first value is the offset value which is 0 according to my phone.

This is the way to find the normal value. Enter:

# cat /sys/devices/virtual/sensors/proximity_sensor/state

It will show you your value. In my case, mines is 6

Now, put both of the values into the formula we discussed above:

Formula: X = OFFSET value + Normal Value

Mines would be X = 0 + 6 = 6

Now, to convert the value into a Hexadecimal. I used this website to find mines . Enter your value in the "decimal" box. If I was to convert my 6 (the sum of, in my case, Offset value + Normal value) into a Hexadecimal it will give me 6

Now, we're going to set the value in /efs/prox_cal

Enter:

# echo -en $ ‘\x6′ > /efs/prox_cal

Now, we're going to change the permission of the file so the system will be able to read it. Run these commands:

# chown system:system /efs/prox_cal

# chmod 644 /efs/prox_cal

# sync

Now, reboot your Note 3 and all is done.

Just like last time, we need to check if all is fine and dandy. Run the Samsung command on your dial screen. Dial *#0*# then select "sensors". Now, put your finger on the sensor. Your phone should vibrate and show you the green screen when your figure is on the sensor.

PROFIT!

:good: :victory: !!