UART: device not responding to data

I originally had my Imp connected to a WT32 bluetooth module, using simple uart57, however, I was getting a little garbage on the line with very long incoming messages, so followed the Bluegiga recommendation, and have switched to using uart1289.
My problem now, is that when my WT32 is reset, I receive the initialization message from the WT32 (Bluegiga, READY etc), but when I SEND a command to it (“AT
”) - I get nothing back.

The WT32 has nCTS/rCTS levels, just like the imp. This is how I wired it up

IMP WT32
1 CTS U_NRTS
2 RTS U_NCTS
8 TX RX
9 RX TX
v3.3 VIN
GND GND
7 RESET

When I start up, I pull pin 7 (WT32 reset) high for 200ms, then low. This resets the WT32.
Immediately, I get the following output:

2014-03-15 15:05:58 UTC+13: [Device] > WRAP THOR AI (5.0.1 build 620) 2014-03-15 15:05:58 UTC+13: [Device] > Copyright (c) 2003-2012 Bluegiga Technologies Inc. 2014-03-15 15:05:58 UTC+13: [Device] > READY.

I then SEND the command “AT
”, but I get nothing back, no OK/READY or echo. When connected via uart57, I get a response.
the only difference, is that now I am using a flow control enabled UART.

This is how I configure my UART:
wt32.configure(115200, 8, PARITY_NONE, 1, 0, wt32callback);

I have scoped the TX/RX (see attached image, red is IMP-TX, blue is IMP-RX), and you can see the initial incoming message, and the outgoing response…

Can anyone point out what I’m doing wrong?

NOTE: I cannot attach my image - some server error “could not move the file” - will attempt to attach it again in a few minutes…

ok…silly me… bad solder joint :frowning:

A tip for others - even with UART+RTS/CTS, don’t try to run the WT32 at 115200 - the Imp just can’t keep up. Drop to 57600 and it works.

The imp should be able to keep up just fine at 115,200, but it’s very possible to be processing data in the wrong way. eg, are you emptying the RX buffer in your data ready callback or just reading one byte? Are you appending to a string or putting the data in a preallocated blob? etc.