serial communication troubles... arduino and wt32

hi there

I am finally trying to finish my project about bluetooth controlled power management.
I just have this huge problem and I have no idea how to fix it. I am using the NewSoftSerial
Library to communicate to my bluegiga wt32 chip. everything seems to work fine, at least on
the recieving part. Once the chip has started up I recieve the HFP (hands free profile) ready
message and I'm able to connect to the bluetooth chip.

As soon though as I try to send to the chip (in my case the command "INQUIRY" to search for
other bluetooth devices) I only receive garbled code. What could be the reason for that? I mean
I receive the startup message just fine so I don't quite understand why I then have so much problems
afterwards... The bluetoth chip is set to send @ 8n1 baud 9600.

This is how my code looks like, nothing special so far I think...

#include <NewSoftSerial.h>
NewSoftSerial mySerial(12, 13);

int resetpin = 6;
int btenpin = 7;

unsigned long now;


void setup()  
{
  Serial.begin(9600);
  Serial.println("Goodnight moon!");

  // set the data rate for the NewSoftSerial port
  mySerial.begin(9600);



  pinMode(resetpin, OUTPUT);
  pinMode(btenpin, OUTPUT);
  digitalWrite(resetpin, LOW);
  delay(200);
  digitalWrite(resetpin, HIGH);
  delay(200);
  digitalWrite(resetpin, LOW);
  delay(200);
  digitalWrite(btenpin, HIGH);
  delay(500);
  digitalWrite(btenpin, LOW);

  now = millis();
}

void loop()                     // run over and over again
{

  if (mySerial.available()) {
    Serial.print((char)mySerial.read());
  }
//  if (Serial.available()) {
//    mySerial.print((char)Serial.read());
//  }

  if (millis() - now > 10000){
    mySerial.println("INQUIRY 6");
  }
}

And this is what I receive:

Goodnight moon!

!!! THIS IS BETA RELEASE AND MAY BE USED FOR EVALUATION PURPOSES ONLY !!!

WRAP THOR AI (2.3.0 build 79)
Copyright (c) 2003-2007 Bluegiga Technologies Inc.
READY.
HFP 2
sco enable
RING 0 00:12:47:ef:c7:bf 2 HFP 
sco open 0
CONNECT 1 SCO
NO CARRIER 1 ERROR 113 HCI_ERROR_OETC_USER
HFP 0 STATUS "service" 1
HFP 0 STATUS "call" 0
HFP 0 STATUS "callsetup" 0
HFP 0 READY
Ù*ªU(ªVH?
?ªJR©¬ 6
ÿe9Q?
©??ªªCÂå*UU)ªVH?
)YNT`?*
%õJª?å*ªU)ªVH?
e9QÂ
©J?©ª!á9EU??
É©??å?*
+?Q©©OR
ÿ?ªRR©L 6
ÿ?å?*
+?Q©©OR
ÿå**U)ªVH?
e9Q?
©J?ªªCÂR§¨UIe??j?ü??U
+HQ©©OR
ÿÊUU)ªVH?
*?U
+HQ©©OR,ÿÊ*UU)ªVH?
?å?*
+?Q©©OR
ÿ9EU$?
É©?V§ªAX DI=I?üR§¨U?e??j?üV§ªAX?II=j?øR§¨UI???j?ü?å?*
+?Q©©OR
ÿR?T?RY 
)?ªV?ªAX R?I5R?RÓT?RY 
)ÿ?9Q

*%%JU?9EU$?
É©?V§ªAX HI=I?ü9E%Ê
É©HªVSªAX DI=I?üÊUU)ªVH?
U+ªP®?ERR?5Q?å
UJU
$AÂÊå?*
+?Q¨©OR
ÿU)ªVH?
V§ªAX LI=I?ü)TUR©¬ 
)ÿ?å?*
+?Q©©OR
ÿÊ*UU)ªVH?
©YNT°?*?%õJª?)ªUR©¬ 6
ÿU+U(+H©ROR
ÿINV%Ie?j?üV§ªAX HI=IRüÊ*UU)ªVH?
ªVSªAX
II=j?øR§¨UIf??j?üÊå?*
+?Q¨©OR
ÿ9EU??
É©?ªVSªA ?I=IRüå*UU)ªVH?
ªVSªAX ?I=IRü9EU??
É©?SYh
a?*?%JUHINQ?Ie??j?üU+U(+H©ROR
ÿ9E%Ê
É©HSYNTp?*?%õJª?9EU"e9Q

SY¨
a?*?)e9Q?IV§ªAX ?I=?å?*%e9QÂ
¬J???9Q

*Ê*UV§ªAXªVSªAX HI

Thank you for any help as my Serial protocol knowledge is limited. I really don't know what to
make of that...

best
yves

OK I'm now a step further and have a possible solution. I noticed
that if I write a command repeatedly that command is actually being
sent correctly. So what I did is I'm sending my serial commands like this:

    mySerial.println("");
    delay(100);
    mySerial.println("INQUIRY 6");

Like this it works almost perfectly. But why is it behaving like this?
I don't have any electronic background but it seems to me as if I have
to kind of physically open up the 'tunnel' to transfer information...

What I was noticing as well is that my loop algorithm doesn't really
work as expected.:

  if(past - now > 4000){

do something;

    past = int(millis());
  }

This should do something every 4 seconds but it takes about 8-10 seconds.
Is this because of the NewSoftSerial? I've read there are some problems
with NSS and millis()...

Thanks for any insight!
yves