PROGMEM char array

Surely you want Serial.print(ff, HEX); rather than just Serial.print(ff);
if you want the output to look the same.

Yes, you're right. Anyway the output is the same. Also

Serial.print( pgm_read_byte( charSet + i ), HEX );

produces same output. I really can't understand