Análisis de datos en serie de Arduino

Estoy escribiendo una aplicación para controlar mi robot con mi teléfono Android a través de Bluetooth, todo va bien, los datos se repiten y se verifican, pero estoy teniendo algunos problemas con el protocolo, específicamente quiero que las ruedas de mi robot giren cuando los envíe. un comando comos,10,100 os,-30,-10... (valores en porcentaje).

Mi problema es que cuando quiero analizar el comando de velocidad de mi rueda en mi Arduino, debo analizarde hasta 4 separarbytes aint, por ejemplos,-100,-100 hace que mi robot retroceda a toda velocidad, pero ¿cómo puedo analizar esto para poder llamar?setSpeed(left, right); conleftyright igual a -100?

Sé que puedo analizar cada byte por separado y juntarlos para obtener un entero, pero no es muy elegante y probablemente haya una solución mejor para todo esto, desafortunadamente, todavía no lo he encontrado.

EDITAR

Aquí está mi función Arduino para analizar mis comandos:

void parseCommand(char* command, int* returnValues)
{
  // parsing state machine
  byte i = 2, j = 0, sign = 0;
  int temp = 0;
  while(*(command + i) != '\0')
  {
    switch(*(command + i))
    {
      case ',':
        returnValues[j++] = sign?-temp:temp;
        sign = 0;
        temp = 0;
        break;
      case '-':
        sign = 1;
        break;
      default:
        temp = temp * 10 + *(command + i) - 48;
    }
    i++;
  }
  // set last return value
  returnValues[j] = sign?-temp:temp;
}

Lo llamas así cuando analizas algo comos,100,-100 (debe ser\0 terminado):

char serialData[16];
void loop()
{
  if(Serial.available() > 0)
  {
    Serial.readBytesUntil('\0', serialData, 15);
    switch(serialData[0])
    {
      case 's':
        int speed[2];
        parseCommand(serialData, speed);
        setSpeed(speed[0], speed[1]);
        break;
    }
    // always echo
    Serial.write(serialData);
    // end of message is maked with a \0
    Serial.print('\0');

    // clear serialData array
    memset(serialData, 0, sizeof(serialData));
  }
}

Respuestas a la pregunta(2)

Su respuesta a la pregunta