Does it work from the Arduino Serial Monitor? And you’re only writing a single r character, try putting it in loop(), Unity probably misses it. Also make sure to properly debug your code Tips for new Unity users
You are calling sp.ReadLine(), which, according to the docs, reads until it reaches a newline character. Since your Arduino doesn’t send a newline, sp.ReadLine() will throw a TimeoutException after your assigned read timeout of 1ms (which might not be enough time to read something substantial anyways)
And About the video you suggested when I try on Serial Monitor the “r” appeared but when it’s comes to unity it doesn’t appear on my console. print(ArduinoString);
You may also want to increase your sp.ReadTimeout. 10 is still quite fast.
Also, don’t discount the suggestion that your Arduino is sending the message before Unity is listening. You could try moving the Serial.write into the loop.