Hey,

das Bascom Programm erwartet wahrscheinlich ein CR + LF am Zeilenende.
Der "write()" Befehl sendet aber aber nur den angegebenen Text ohne CR + LF.
Probier mal folgendes:

serialport.write("a\n\r")

Alternativ hast du mal überprüft ob der Text vom Pi gesendet wird (sprich das Pi an den PC angeschlossen und mitm Terminal drauf geschaut) und ob das Programm vom Mega richtig arbeitet?