any variation of strtol I used caused the esp to reboot
String hexstring = "F3";
int number = (int)strtol( &hexstring, NULL, 16);
or
String hexstring = "F3";
long number = (long)strtol( &hexstring, NULL, 16);
or
String hexstring = "F3";
char *p;
long number = (long)strtol( &hexstring, p, 16);
or
char *p;
char *s;
s = "F3";
long number = strtol(s,&p,16);
Made the following as a work around to covert "#FFFFFF" RGB html values to ints
void getRGB(String hexRGB, int *rgb) {
hexRGB.toUpperCase();
char c[7];
hexRGB.toCharArray(c,8);
rgb[0] = convertToInt(c[1],c[2]); //red
rgb[1] = convertToInt(c[3],c[4]); //green
rgb[2] = convertToInt(c[5],c[6]); //blue
}
int convertToInt(char upper,char lower)
{
int uVal = (int)upper;
int lVal = (int)lower;
uVal = uVal >64 ? uVal - 55 : uVal - 48;
uVal = uVal << 4;
lVal = lVal >64 ? lVal - 55 : lVal - 48;
return uVal + lVal;
}