Go Down

Topic: Bluetooth on the cheap (Read 10108 times) previous topic - next topic

Glenn Edelen

I am considering buying an Arduino but need to be able to communicate to the device via Bluetooth. The USB version of Arduino is about $35 but the Bluetooth version is about $145.

I was wondering why I cannot get the USB version and then simply plug a $20 Bluetooth dongle into the Arduino.

What am I missing here?

The application that needs to communicate with the Arduino is running on OS X if that makes any difference.

Thanks.

weirdo557

the problem is that those cheap bluetooth dongles normally only contain the transmitter for the bluetooth frequency. the protocol and software controll is all done through drivers on the computer. the arduino bluetooth version has all the bluetooth controll integrated into it, that way you dont have to waste processor time on protocols. also, you cant just plug usb devices into an arduino. it cannot work as a usb host as of yet, and even if it did i doubt you would find documentation on the specific usb dongle.

Dougl

National Semiconductor once made a Bluetooth module with built-in serial profile support and all you did was talk to it via AT commands over serial for the pairing, connections, etc. Kinda like a wireless cable if you had two of these and paired them up. I don't know if they still make them but if they do, it could be a nice part for a Bluetooth Shield if someone could design a PCB antenna for it. But maybe the application notes include a PCB antenna design as some do.

You see, without having some embedded Bluetooth stack or a micro-Bluetooth stack on the Arduino, those $20 Bluetooth dongles have no way to connect or get setup for use. But on those $20 Bluetooth dongles there's typically an RS232 interface to the Bluetooth chips on the other side of the USB chip.

So you'll either have to port a Bluetooth stack to the Arduino to use that $20 USB dongle after hacking it to get to the RS232 interface on it, or get a chip which already embedded a stack such as the National Semiconductor package( if they still make it ).

Doug

retrolefty

#3
Dec 21, 2008, 08:28 pm Last Edit: Dec 21, 2008, 08:28 pm by retrolefty Reason: 1
I stumbled across this E-bay offering of a mico compatable Bluetooth module that will talk to those cheap PC dongles and costs $20:

http://cgi.ebay.com/Bluetooth-serial-converter-module-UART-interface_W0QQitemZ120352469447QQihZ002QQcategoryZ44999QQssPageNameZWDVWQQrdZ1QQcmdZViewItem

Lefty

piecurus

Hi,
I'm using this one.
http://www.sparkfun.com/commerce/product_info.php?products_id=582

It's not so cheap but it works very good. Using Mac Os X, you have to configure only the virtual COM port and using it as a serial device.

Glenn Edelen

Thanks for the input. This is my first post to this forum and I'm very impressed with the responses. Says a lot for the Arduino community.

The module Lefty referenced on E-bay looks pretty interesting. The only catch I see it the signal I/O is 3.3V so if using a 5V Arduino you will need to level shift those.

If you check the schematics for the SparkFun device that looks like all they are doing, using a 3.3V device and they added a regulator with level shifters on the I/O pins.

It seems like if you had a good source for the PCB you could make one of these for about $30. Sounds pretty interesting.


Glenn

mungbean

I've used the Parani ESD-200 module in the past with PIC and Basic Stamp and it's very reliable and easy to use.   It's about £35 in the UK (~$50 US).

Like many of the other options it's also 3.3V, but you only need  a handful of components to sort this out (a resistor + zener diode for each I/O line you're using), and recent Arduinos have a 3.3V output available on the shield connector.

http://www.merlinwireless.co.uk/merlinbluetooth/parani-esd200-class-2-chip-antenna-p-105.html

The module uses rs232-style serial with CTS/RTS handshaking, which is currently a bit of a weak spot with Arduino.

halley

Anyone try to work with one of these?

http://www.broadcom.com/products/Bluetooth/Bluetooth-RF-Silicon-and-Software-Solutions/BCM2042

This is what the Wii Remote uses, and they definitely have to reduce complexity and part count for these things.  When in doubt about the cheapest way to implement some concept, see if a toy company has done it.  They have to cut every possible corner.

kg4wsv

No, but Broadcom has been a thorn in my side at work, when it comes to their WiFi devices, especially with linux.  IIRC they're one of these outfits that refuses to release their API so the linux crowd can write drivers.

-j


Anachrocomputer

I think there's another issue to be wary of with these Bluetooth USB gadgets (do correct me if I'm wrong).  The Arduino is a USB slave device, and the Bluetooth gadget is also a USB slave device.  This means that they won't be able to communicate because every USB setup needs one device to act as USB master.  In the usual case of connecting a USB gadget to a PC, the PC is the master.  Likewise with a Mac, the Mac is the USB master and the Bluetooth device is the USB slave.  Is this correct?  Or can the Arduino somehow act as a USB master?

Dougl

The USB stuff is a problem but that's why the cheap USB Bluetooth dongle way to go would require getting into the case and connecting to the serial interface of the Bluetooth chip. They are just a serial interface and API to do Bluetooth so it shouldn't be too difficult to bypass the USB chip.

Every Bluetooth USB device I've seen is just a USB Serial Com device for the Bluetooth software stack to talk to.

FYI,
Here's the National Semi part I mentioned earlier, it has all the software builtin so it looks like a serial device to what's connected to it:
digikey:
http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=LMX9838SB-ND

datasheet:
http://www.national.com/ds/LM/LMX9838.pdf

A number of years ago, I got some of these from China in RS232 modules and they worked pretty good. Wholesale price was about $30 but they were Bluetooth v1.x not v2.x with all the audio capabilities etc.

Anachrocomputer

Hmm... just a serial port, eh?  I've never opened up a Bluetooth gadget to see (my mobile phone is a Nokia 9110 and doesn't have Bluetooth).  Maybe I'll try that!

kg4wsv

Not all bluetooth devices are "just a serial port" by a long shot.  Some may not even have serial port support.

The magic words to look for are Serial Port Protocol (SPP) support.  This is the bluetooth feature that emulates an rs232 port, as used by the Arduino and the Sparkfun type modules.

-j


Dougl

You are correct if looking for the easiest solution but Bluetooth modules with builtin Bluetooth vX.X stacks and doing SPP are not the cheapest.

What I meant by the Bluetooth chips having serial interface is that the chip itself uses serial communications and don't use USB to communicate over.  I believe the cheap Bluetooth dongles have the USB chip are frontends for the TTL level serial port of the Bluetooth chip. Kinda like how the USB chip is a frontend to the Arduino TTL serial port.

Liz8Duino

These look interesting at $49

http://www.a7eng.com/products/bluetooth/productpages/eb301serialbtadapters.htm


Go Up