Because the LED Driver takes values 0 - 1023 for each channel.
That being the case, why does
My computer application will output FFFFFF
Your computer application should output values that match the LED driver.
Otherwise, you might just as well multiply the values by 4. You'll simply increase the granularity between adjacent values.
Is there a function that converts an ASCII hex value to numeric?
strtoul().