It looks like the PiGateway.ino has been modified in the last few days, so it differs from my version which is older. However, I think the issue is still the same.
The dataPartvariable[MAX_BUFFER_LENGTH] declared in the processCommand method is too small to hold sprinkler strings. MAX_BUFFER_LENGTH is defined at 25 in my sketch. sprinkler strings are typically longer than that.
targetId = atoi(dataPart); // attempt to extract nodeID part
ptr = strtok(NULL, ""); // get command part to the end of the string
sprintf(dataPart, "%s", ptr);
The dataPart string in the sprintf is too small to handle the sprinkler string.