Bluetooth Communication for the Half-Byte Console (or how to make your HC-06 work)

WP_20140619_007Wireless transmission of data is mostly preferable to using physical connections and, in the Arduino world, it is no different. If you want a network of sensors or need to have several microcontrollers communicate with each other or a PC, you may not be able wire them together. Fortunately, there are several wireless alternatives that are simple and inexpensive.

While scouting eBay and other sources for parts for the Half-Byte Console, I found these cheap, simple and cute little Bluetooth modules. They also happen to work with the serial connection on your Arduino. If you decide to use the standard serial pins (RX/TX) then coding the module is a no brainer: just use Serial.Write, Serial.Print, etc. to send data or Serial.Read(), etc. to get data. If you need to use other pins, use SoftwareSerial.  It really is that simple.

The particular module I have is the JY-MCU BT-Board v1.02pro (HC-06).  It was $4.99 on eBay.

Wiring it up was simple: WP_20140619_014

  • RX->TX
  • TX->RX
  • GND->GND
  • VCC->+5v

When the module is powered up, and found by another Bluetooth enabled device, it shows as ‘HC 06’.  The key is ‘1234’.  Once the device pairs with the HC-06, you are now ready to communicate. On a PC, you’ll need some kind of terminal app that can access a virtual serial port or Bluetooth directly. I found a Windows 8 Modern Appbtserialterm called Bluetooth Serial Terminal and it works great (it is also free from the Windows App Store.) The application is very simple, there’s no real setup as it detects BT devices and configures itself accordingly.

The module defaults to 9600baud, which is a bit slow, but you can reconfigure it. I chose to leave it at the default since the particular application I have in mind will not require more than that.  I’ll spare the dirty details of configuring the module and leave it to ‘Stan’ at the 42bots blog.

Since the module is serial, it works with Arduino Tiny Basic.  As long as you keep it on the RX/TX pins, you can use the built-in Tiny Basic serial statements to talk to and send data over bluetooth.

SPRINT “Hey ma, I’m on Bluetooth now!”

will send that sentence over Bluetooth and be displayed on the BT enabled device. You can IN( 0 ) to receive data from the module. It is very simple.

WP_20140619_011This little module, coupled with an Arduino Pro Mini and some sensors would make a cool little environmental (one use) device. No screen would be needed, which brings cost way down. Instead, you could use your BT enabled phone or tablet and when it gets near the device, they auto pair and you can open up your terminal or, perhaps, dedicated app and get the data streamed to you. I envision, under Windows 8 or Windows Phone 8, having a live tile that would display this data for you. 

It also opens up some cool game ideas. Awhile back, I wrote of using Basic Stamps to create a meshed Star Trek like game.  These little BT modules could make that really easy to do.  There are always possibilities.

I am really impressed with this little module. It was super simple and really cheap and, it just works.

For a cheap, simple and effective means for wireless data in your Arduino projects, these little gems seem to be the way to go.

Advertisements

iCade Jr: arcade fun for your iPhone, iPod Touch and iPad

iCadejrSince getting the iPhone 4 a few months back, I’ve managed to get a few accessories for it, either through purchase or gifts.  One of them really brings out the kid in you: the iCade Jr.  iCade, for those who do not know, is a mini arcade cabinet sized for the iPad. It has a real joystick (that would look at home in an actual arcade cabinet) and four buttons arranged in a diamond pattern. The device uses bluetooth, so it could really work with any bluetooth enabled tablet.

iCade Jr. is the same as iCade, only sized for the iPhone 3GS, iPhone 4 and 4s. Or, actually, ANY similarly sized and shaped, bluetooth enabled device. (The iPod Touch works as well.)

Of course, the games themselves need to be compatible with the device and, sadly, most are not. There is a list of compatible games on the iCade Jr. web site.

I have purchased the Activision Atari Collection ($4.95 in the app store) and it works like a charm. The ability to play Pitfall, as it would have been on the Atari VCS, on my phone is pretty damned cool.  The collection also includes games from Imagic as well (Atlantis, anyone?)

Even though the device is diminutive, it really does ‘feel’ like the real thing…in miniature. I find that it has to be played on a table top and not one’s lap, not a big deal, but limits its portability. Some of the games need to be played with the phone rotated, so having phone sit sideways on the device is kind of a let down, but, once in the game, you really don’t care.

The biggest disappointment, however, is also a big plus: it is NOT a dock and has NO physical connection to the phone. There is, however, a slide through for your charging/data cable, so it does make a cool ‘dock’ to charge the phone.  This, by the way, also makes it more universal.

At it’s current sales price of $9.99 at thinkgeek.com, you could buy to use just as a cool charging station for your device.  I’m guessing, though, that there are games on the Android side that will work with the iCade.

One caveat: while the iCade should work great with the iPhone 5, the top may not shut all the way since the iPhone 5 is taller.

Lastly, since the device IS bluetooth, you can ALSO USE THE DEVICE with the iPad. So…prop up that iPad and use the iCade Jr. as a controller as well. And, for under ten bucks, it’s a rather cool controller.

iCade and iCade Jr. are from ION Audio and can be purchased from retailers like Target, BJ’s Warehouse and thinkgeek.com.

You can find a list of compatible iOS games here.

Pairing your Brookstone Bluetooth keyboard with your iPad (or any other Bluetooth keyboard)

I’ve received a few inquiries about pairing the Brookstone Bluetooth keyboard with the iPad, so I thought I would post the instructions.

To pair the keyboard:

  1. Turn on the iPad and the keyboard
  2. Press the Bluetooth Connect button on the keyboard (the light will flash)
  3. On the iPad, tap the Settings icon
  4. On the LEFT side, find the Bluetooth setting and tap it with your finger
  5. Under DEVICES, select the Bluetooth keyboard case
  6. After a second or two, the iPad should display a box with a code. It will ask that you type code on the keyboard (just press the keys that correspond to each character in the code, NOTHING will display as you type.)
  7. Press the ENTER key on the keyboard once you have typed the code in
  8. After a second or two, the iPad will tell you that the keyboard has been paired.

brookstoneiPadkeyboardcaseFrom this point on, you should not have to pair them again, however, I found that if I let the keyboard battery die, once it is charged, you will have to pair them again.  The keyboard is charged via a standard USB cable. Any USB wall charger will work or you can charge it via a powered USB port on the computer.

NOTE: if you do not use the keyboard for 15 minutes, it will shut off. Just tap a key to turn it back on.

There are numerous Bluetooth keyboards that will work just like the Brookstone. These instructions should work with most of them.

Digg This