Rx and Tx on Boarduino Vs Diecimila

For other supported Arduino products from Adafruit: Shields, accessories, etc.

Moderators: adafruit_support_bill, adafruit

Rx and Tx on Boarduino Vs Diecimila

Postby Vincentim » Fri Feb 08, 2008 9:21 am

Hi all,

I have successfully connected a GPS to a Diecimila board, on the Rx and the Tw pins.
Since the baud rate of my GPS is 115200, I can't use the SoftwareSerial library (limited to 9600 bps). So I am stuck to the Rx and Tx pins, which is not an issue on my Diecimila.

I want to migrate my application on a Boarduino, for cost and weight saving, but the two Rx and Tx pins don't seem to have exactly the same behavior : I can't monitor the serial port with the GPS connected.

Are you aware of that ?
Any workaround ?

Thanks.
Vincentim
 
Posts: 7
Joined: Fri Feb 08, 2008 9:01 am
Location: Grenoble -FRANCE-

Postby Entropy » Fri Feb 08, 2008 11:34 am

Are you using the appropriate level shifter (if it is an RS-232 GPS)?
Entropy
 
Posts: 472
Joined: Mon Jan 07, 2008 11:43 pm
Location: Owego, NY USA

Postby Vincentim » Fri Feb 08, 2008 12:54 pm

Hi Entropy,

Thanks for your answer.

I don't know what you call a 'level shifter' :wink:
It is an RS-232 GPS. I think the way I connect it is correct (Rx, Tx and ground) as it works with a Diecimila board ...
Vincent
Vincentim
 
Posts: 7
Joined: Fri Feb 08, 2008 9:01 am
Location: Grenoble -FRANCE-

Postby adafruit » Fri Feb 08, 2008 1:00 pm

yes the boarduino is missing a 1k resistor that the diecimila has between rx and the ftdi chip. are you positive that the GPS only does 115? thats kinda rare, usually they stick with lower rates...
User avatar
adafruit
 
Posts: 10483
Joined: Thu Apr 06, 2006 3:21 pm
Location: nyc

Postby Entropy » Fri Feb 08, 2008 5:31 pm

Vincentim wrote:Hi Entropy,

Thanks for your answer.

I don't know what you call a 'level shifter' :wink:
It is an RS-232 GPS. I think the way I connect it is correct (Rx, Tx and ground) as it works with a Diecimila board ...

The FTDI chip (and both the Arduino and Boarduino) use TTL signal levels.

RS-232 uses different signal levels than TTL. Very often TTL inputs can work with RS-232 outputs, although using a level shifter such as a MAX232 is optimal. In rarer situations, TTL outputs will drive an input that expects RS-232 voltage levels, but this is very unreliable and heavily dependent on the exact device, since a TTL 0 is an "invalid" level for RS-232 (but some receivers assume 0.)

I also agree that it's surprising the GPS does 115 - most NMEA GPS receivers I've seen default to 9600 unless put into a special mode. (Such as the Garmin binary protocol.)
Entropy
 
Posts: 472
Joined: Mon Jan 07, 2008 11:43 pm
Location: Owego, NY USA

Postby timv » Sat Feb 09, 2008 2:00 am

115k seems to be what mine wants to do too. It wouldn't matter for quick position fixes, but mine is mainly meant for phototagging use and data logs with thousands of points can be a couple of hundred k long. That would take several minutes at 9600.

I just got it and I haven't spent that much time goofing with it yet, so maybe there's a way to change that setting. But perhaps it's a recent trend?
User avatar
timv
 
Posts: 76
Joined: Thu Nov 01, 2007 3:13 pm

Postby Vincentim » Sun Feb 10, 2008 3:15 pm

ladyada wrote:yes the boarduino is missing a 1k resistor that the diecimila has between rx and the ftdi chip. are you positive that the GPS only does 115? thats kinda rare, usually they stick with lower rates...


In fact, this GPS logger has a USB connection, I found the serial port inside. I am currently trying to 'talk' to this GPS to tweak the communication, but it's tricky (at least for me :roll: ).

Do you believe that adding this resistor on the yellow cable (if I believe this doc) of the FDTI cable could solve my issue ?

Thanks.
Vincent
Vincentim
 
Posts: 7
Joined: Fri Feb 08, 2008 9:01 am
Location: Grenoble -FRANCE-

Postby Vincentim » Sun Feb 10, 2008 3:23 pm

Entropy wrote:The FTDI chip (and both the Arduino and Boarduino) use TTL signal levels.

RS-232 uses different signal levels than TTL. Very often TTL inputs can work with RS-232 outputs, although using a level shifter such as a MAX232 is optimal. In rarer situations, TTL outputs will drive an input that expects RS-232 voltage levels, but this is very unreliable and heavily dependent on the exact device, since a TTL 0 is an "invalid" level for RS-232 (but some receivers assume 0.)


Understood ... As it worked perfectly on the 'regular' Arduino, I though it would be the same with the Boarduino.
I am going to try with the MAX232. Anyway, it will be 'cleaner' from a signal level standpoint.

Entropy wrote:I also agree that it's surprising the GPS does 115 - most NMEA GPS receivers I've seen default to 9600 unless put into a special mode. (Such as the Garmin binary protocol.)


Please see my answer to Ladyada just above.

Thanks Entropy.
Vincent
Vincentim
 
Posts: 7
Joined: Fri Feb 08, 2008 9:01 am
Location: Grenoble -FRANCE-

Postby Vincentim » Sun Feb 10, 2008 3:38 pm

timv wrote:115k seems to be what mine wants to do too. It wouldn't matter for quick position fixes, but mine is mainly meant for phototagging use and data logs with thousands of points can be a couple of hundred k long. That would take several minutes at 9600.

I just got it and I haven't spent that much time goofing with it yet, so maybe there's a way to change that setting. But perhaps it's a recent trend?


Hi Timv,

As said above, I'm connected directly inside the GPS. I am trying to find how to talk to the hardware and adjust the baud rate to a level compatible with the SoftwareSerial library, but the easiest way would be to be able to connect the GPS directly to the Tx and Rx pins.

Thanks.
Vincent
Vincentim
 
Posts: 7
Joined: Fri Feb 08, 2008 9:01 am
Location: Grenoble -FRANCE-

Postby adafruit » Sun Feb 10, 2008 3:54 pm

Vincentim wrote:
ladyada wrote:yes the boarduino is missing a 1k resistor that the diecimila has between rx and the ftdi chip. are you positive that the GPS only does 115? thats kinda rare, usually they stick with lower rates...


In fact, this GPS logger has a USB connection, I found the serial port inside. I am currently trying to 'talk' to this GPS to tweak the communication, but it's tricky (at least for me :roll: ).

Do you believe that adding this resistor on the yellow cable (if I believe this doc) of the FDTI cable could solve my issue ?

Thanks.


close, you should hack the orange wire, but ya, thats all you need to do. use a 1K resistor.
User avatar
adafruit
 
Posts: 10483
Joined: Thu Apr 06, 2006 3:21 pm
Location: nyc

Postby Vincentim » Sun Feb 10, 2008 5:11 pm

ladyada wrote:close,

That's the story of my life ... :wink:
ladyada wrote:you should hack the orange wire, but ya, thats all you need to do. use a 1K resistor.

Thanks, you're THE 'Lady' !!
Vincent
Vincentim
 
Posts: 7
Joined: Fri Feb 08, 2008 9:01 am
Location: Grenoble -FRANCE-

Postby adafruit » Mon Feb 11, 2008 12:49 am

ill try to get my softwareserial code working with 115K
i have to already go in and modify it for 2400 since apparently thats what phidgets uses :)
User avatar
adafruit
 
Posts: 10483
Joined: Thu Apr 06, 2006 3:21 pm
Location: nyc

Postby Entropy » Tue Feb 12, 2008 8:41 am

Vincentim wrote:
ladyada wrote:yes the boarduino is missing a 1k resistor that the diecimila has between rx and the ftdi chip. are you positive that the GPS only does 115? thats kinda rare, usually they stick with lower rates...


In fact, this GPS logger has a USB connection, I found the serial port inside. I am currently trying to 'talk' to this GPS to tweak the communication, but it's tricky (at least for me :roll: ).

Do you believe that adding this resistor on the yellow cable (if I believe this doc) of the FDTI cable could solve my issue ?

Thanks.

Oh, it is USB by default and you "hacked out" the serial lines?

Actually you may not need the MAX232 then - if those serial lines were internal-only they are likely TTL voltage levels.

It may be that what you need is some sort of buffer chip (perhaps like the one Ladyada uses in the USBTinyISP, I can't remember if that's an inverting buffer or not...)
Entropy
 
Posts: 472
Joined: Mon Jan 07, 2008 11:43 pm
Location: Owego, NY USA

Postby adafruit » Tue Feb 12, 2008 9:08 am

usbtinyisp != TTL its actually lowlevel USB. the ftdi cable has an FTDI USB-TTL chip molded into it :!:
User avatar
adafruit
 
Posts: 10483
Joined: Thu Apr 06, 2006 3:21 pm
Location: nyc

Postby Vincentim » Tue Feb 12, 2008 3:25 pm

Entropy wrote:Oh, it is USB by default and you "hacked out" the serial lines?


Right

Entropy wrote:Actually you may not need the MAX232 then - if those serial lines were internal-only they are likely TTL voltage levels.

It may be that what you need is some sort of buffer chip (perhaps like the one Ladyada uses in the USBTinyISP, I can't remember if that's an inverting buffer or not...)


Whow ...
I gonna try the Lady's trick first :wink:

Thanks.
Vincent
Vincentim
 
Posts: 7
Joined: Fri Feb 08, 2008 9:01 am
Location: Grenoble -FRANCE-


Return to Other Arduino products from Adafruit

Who is online

Users browsing this forum: No registered users and 0 guests

Stuff to buy from the Adafruit store and links to product documentation!


New Products [105]

Raspberry Pi[80]
 
FLORA[23]
 
Bunnie Studios[9]
 
FPGA[1]
 
mbed[11]
Arduino[60]
 
NETduino[14]
 
BeagleBone[24]
 
Android[6]
 
XBee[10]
More Dev Boards[30]


 
BoArduino[8]
 
SpokePOV[4]
 
TV-B-Gone[4]
 
MiniPOV[3]
 
SIM reader[3]
 
Microtouch[5]
 
Clocks & Watches[18]
 
Drawdio[4]
 
Brain Machine[1]
 
Game of Life[2]
 
MintyBoost[2]
More DIY Kits[16]


 
MaKey MaKey[3]
 
Tweet-a-Watt[5]
 
Young Engineers[33]
 
Discover Electronics[2]
 
Snap Circuits[4]
 
littleBits[3]
 
Project packs[8]


 
Breakout Boards[33]
LCDs & Displays[48]
Components & Parts[69]
Batteries & Power[49]
EL Wire/Tape/Panel[52]
LEDs[108]
 
Wireless[14]
Cables[60]
 
Lasers[6]
Sensors/Parts[145]
 
Enclosures/Cases[11]
 
Solar[11]
 
RFID / NFC[13]
Prototyping[69]
 
iDevices[13]
Tools[71]
 
Wearables[39]
 
CNC[37]
 
Robotics[29]
 
3D printing[1]
 
Materials[24]


 
Stickers[41]
 
Skill badges[55]
 
Books[25]
 
Circuit Playground[7]
 
Gift Certificates[4]