IMU 6DOF + GPS TTL communucation problems

i tried that too.

#include <NewSoftSerial.h>

NewSoftSerial gps(2, 3);
NewSoftSerial imu(5, 7);

void setup()
{
  imu.begin(38400);
  gps.begin(38400);
  Serial.begin(9600);
}

void loop()
{
  // Every 10 seconds switch from
  // one serial GPS device to the other
  /*if ((millis() / 10000) % 2 == 0)
  {
    if (gps.available())
    {
      Serial.print(gps.read(), BYTE);
    }
  }

  else
  {
    if (imu.available())
    {      
      Serial.print(imu.read(), BYTE);
    }
  }*/
  if (imu.available())
    {      
      Serial.print(imu.read(), BYTE);
    }
}

i receive a short burst of data (which is supposed to be the root menu) every time i hit the reset button on the imu but its always just a handful of illegible ascii characters. i've tried every baud rate from 9600-115200. i just get different ascii characters depending on the baud rate i pick. 57600 is the default according to the manual.