Arduino and Raspberry Pi through Serial

I have my raspberry pi connected to my Arduino through the serial lines. I have a logic converter so the voltages are changed. All the electronics are okay I think.
My problem is when the raspberry pi starts up and it send lots of serial information, the information looks like this
(copied from Arduino Serial Monitor)

nbbbnnmm,,lllU·Ö«É²®WËu¦ZUá??Ç ²ËU±±õèi®?¡²­??UØ.?[HH&	?ÁÁ??W¤)«Ñ´X[-¯åÎ ã?½êp®?Ö+͐,WW¤´??LL&&Sb¥Üu¸»Y×W?µÔ«?Ýë??òaØdKV?WºrÚæÑeÅzº??¡?É???)¹rÉ?,Ó,?k±òY¹??½Å?\O±²ëå¦k²¬­o²??ß?	s5%Õ?8[?[HH&)?ÉÑ`1®YZKÉÊaºY?.??YZ«ÀùAat?Cá[HH&)?ÝÙ??W¤ªÔU
iÕ±®Íèe¶Z+Ñ´X[-¯V¤ü[HH&)?ÅÙb3¯5[H?[H[HHÉ[+[[HH&©²ÍÅl0¯WQ[H[HH&)º[HH&@?[HH[)[?K[HH&	?ÍÙp?[H.[H	±k±[?±[HH&	¢Å[HÁ[5[HH&	[?[HH&)ÂÉÝf0­Kt¥´×)Õ·ºX.$VW½è_??MIj)ÿ[HH&)ÂÙå?NW$*Õ·ºK¬¬?´Ø.-WK??[HH&)ÊÑÕd2­SUiÆhµªÑ².Ò?eåÖ[HH&I?ÁÝp2+¤k¶·Z$­Ö[H?V[HH&?[HH&I?áÑl0®ÔËÍ·¶Y'¤×W?½?[HH&é[HH&I²ÝÍ`4®Y[HH&IºÝÙé[v,
?[Hv,5
?[v±J
?[HH&i?[HH&[HH&¥[HH&[HH&©¢ÙÉh6­¨KÊ ©Y?VÖ?I	??5[HH&©ªÅÕ?L¤ª¥·?«eÂulºW?«?¹[K±K?¸X®¬k5?[HH&©ªáÙ?L/$TË+ÍÐe²®+Ëu@d¥³¬?»X«?¹[K±K?¸®¬+5?[HH&éºÅÕl4­U®-끡.?«KDM(¤ëE²Cá[HH&éºÝÁl3­HY®õÈi³j®,ÍÌe¹R??¹¹.©Ê?Ân±Y[?ѐK(VÍÂb¶YÙÈü[HH&éÂÕÁ?M¤ª±ºZ\®5?¹®K¤·ZY.W?¢·ZXk?·Y??Z[H?[HH[HH&[HH&	][HH&	[HH&?[H[HH[HH&	ªÁ½[HH&	ª[HH?k[HH&K[HH&«[HH[HH&	?[HH&ë[HH&VV[HHº[HH&Ñ×[HH&W[HHéÊ
?[HËë
?[éë
?[HHË[HHË5[H?kä[HH[HHë[HHõ[HH?ËK[HH?[HH?[HH??ÕÑ[HH?[HH?[Hë[HH?[HH?ºÑÑ%[HH?i-.«µ²[HH?Ñ?[HH?)?ÁÉ[HH?)?ÍÅ?L$?¥»Y®×?º¥[HH?ÕÍj6?WHU+?K¥[HH?ºÍáf6­[kÁ[HH?ÊÍÁh0®[k?-[HH?I?Ñå?L7$«±¶-?[HH?4ÍÍ`3¶WH®.R©)éÜe»TZ«4Á²YY¤5%@dµ»Z¬É«µÄe¹MH­®-{²×ëõÑ[HH?i¢ÉÁ??'¤©?²²HZ-¤­RË¡½åt [??´\.ÁO&&S?ÁÅ
[HH?T¢ÍÉp2®Ý.,RS)é?e»?*(VË¥±YHî«Üd?Z?UË?õä=??MK¤-?½d®,Wâ[HH?TÕÉf36WH®.R©)é?e»U*(VË¥ce?+Ëuå:S?õ??HT®?Õ±ºO&??ÉÒa[HH?TÙÉl7?W¹[HH[HH??ªÍÉd6­].,RS¹Åt ¶Y	+uÐ-¹¸Ù©5Áev­¬É+µ±Y.Ò©Í´·?덯?[HH?)ºÍÕd4­].,RS¹Åt ¦Y©5Ñev­¬ÉëÕ·²NH?UË?õä=?YMK¤-?½Èu[HH??ÂÉÝh6¯].,RS)¹Åt §Y©?	de»ZTbèrµ·Vé@M³¹O&	AÉÞdu,W?±¦e¹µ?[HH??åÕj4?W[HH?ªáÍb7­®k?M^/¤S?rÅéb??NH-Á]YVkѳ¹@Òµ¹lªááN °ºH].Vcm?)*[HL&	ÊÙÝh0®+j?Í@(¶[,­`p?J'?WkëeÅryì«Á¶Y]VHü[HL&)?ÝÁn7®Q+Eµ?¹J[­,µÁ¸?J'¤ëÕ¶ºY?+?Uæy³ºV»Z-¤K?²¹+???[HL&)?ååp4®Sd¥5·]??²]ëE?Y^[HL&)?«[HL[HL&??ÙÁ94®/V??­L&êéæt±¹ZZk»Y®Wëå@1?M#á[H&???Áår6­Q+Ej?Í@(·[,­?¸IJ'?W«©õên´YYzátsJ«±¶JCá[H¦?4?ÕÉh5­Q+Ej?Í@(¶[,­`p?J'?W«©õênºYY	=Áés:?«Ñl)!á[H&?²áÙj7­QVKÂÍÕ@A¦ªÒ+K?,WV??²H#á[H&?áÉd4¹WH¬¬KÂÍÕ@A¦Uj?Á,WV??²H#á[H&?åÍd7WH¬¬KÂÍÕ@A¦jÒ+Á?WV??²Há[H&?ÊåÍ`9¯Q\KÂÍՐP?ª(Ò+±¹?,W?+Ô[H&??ÝÑp1­QVK[H&?ÉÝ[H&?Í[H&?)¢

I have what I believe is the correct Serial baud rates. I just checked the Serial monitor and it is the same as the code 9600.
once the raspberry pi is loaded and I send information through the Serial monitor it sends it right back.
Here is my code

#include <SoftwareSerial.h>
SoftwareSerial mySerial(2, 3); // RX, TX

void setup()  
{
  Serial.begin(9600);
  mySerial.begin(115200);
}

void loop() 
{
  if (mySerial.available())
  {
    char test = mySerial.read();
    Serial.print(test);
  }
  
  if (Serial.available())
    mySerial.write(Serial.read());
}

You help is much appreciated I have been trying to figure this out for hours now

It sure looks like you still have to eliminate a baud rate mismatch.

How are you sending data from the Pi (post the code?), and how have you confirmed the baud rate it is using?

-br

I am using the Raspberry pi's Serial for command lines. I have no code. http://www.hobbytronics.co.uk/raspberry-pi-serial-port

By default the Raspberry Pi’s serial port is configured to be used for console input/output.

Out of thoughts here except to try 115200 instead of 9600, if you haven't already.

You did go through the Disable Login and Disable Bootup Information procedures at that link, right?

-br

I did not disable the login. I thought I could login with the Serial window

Well try 115200 and see what you get then. Maybe it will be a login screen.

Anyway, it looks like all the initialization is for 115200.

Or go back and try working through the directions…

Cheers,

-br

I changed the code to this

#include <SoftwareSerial.h>
SoftwareSerial mySerial(2, 3); // RX, TX

void setup()  
{
  Serial.begin(115200);
  mySerial.begin(115200);
  pinMode(8,OUTPUT);
}

void loop() 
{
  if (mySerial.available())
  {
    Serial.write(mySerial.read());
  }
  
  if (Serial.available() >0)
  {
    mySerial.write(Serial.read());
        digitalWrite(8,HIGH); delay(1);
  }
 else
{ digitalWrite(8,LOW); }

}

The Raspberry Pi receives serial data perfectly I tested it and it is flawless. The Arduino is still receiving the gibberish serial though. The voltage coming out of the logic converter is 4.97 volts. I really don’t understand what the problem is.

Not sure if you found an answer but in my case the baud rate was too high. Once I turned it down to 9600 on the pi, I was able to get everything working.

more information on my exact steps on setting turning the baud rate down.

i ended up using a hardware serial on the mega to go at that speed.