Thanks for you reply, Mike. I searched about gamma correction and now really makes sense why the fading is like this.
I tried to correct using this code, but I'm not seeing difference from before. Could you help me about what I am doing wrong?
int pinmap[64];
int gamma[256];
// gamma correction lookup
String commandBuffer = "";
// a string to hold incoming data
String command ="";
boolean stringComplete = false;
int gamma12(int i) {
int result;
result = pow(float(i)*16/4096,2.8)*256;
// 'i' is a 8-bit source value, 0 to 255 and gamma 2.8
return result;
}