Solution with strchr(). Posted as an alternative and to show how to cast a byte array to a character array.
void setup()
{
Serial.begin(115200);
// received payload
byte *payload = (byte*)"A0:433.33";
// pointer to value in payload; will be 'calculated'
char *val;
// find colon; note the casting to a character pointer
val = strchr((char*)payload, ':');
// if colon found
if (val != NULL)
{
// replace colon by null terminator
*val = '\0';
// let val point to the actual value
val++;
// print the 'label'; again note the cast to a character pointer
Serial.println((char*)payload);
// print the value
Serial.println(val);
}
else
{
Serial.println("Could not find colon");
}
}
void loop()
{
}