Header banner
Revain logoHome Page
Pogo Shakey photo
Tajikistan, Dushanbe
1 Level
753 Review
77 Karma

Review on ๐Ÿ“ฑ DSD TECH SH-HC-08 Bluetooth 4.0 BLE Slave Module with UART Transceiver for Arduino, iOS Compatible by Pogo Shakey

Revainrating 3 out of 5

Works well after you get familiar with Bluetooth LE compared to regular Bluetooth

This is a good little module that connects properly to the breadboard. It's easy to plug in and turn on. You can connect it to the Arduino's RX/TX serial connection and send/receive information between the Arduino and the included Android app (DSD Tech Bluetooth). I've never used a Bluetooth LE device, so initially I had trouble getting other apps. work with it, especially with MIT AppInventor. I finally found out that these BLE devices don't work like normal Bluet devices. Not only do you need to make sure other hardware supports BLE, but software needs to be written to support it. Also, they don't support the connection in the same way. It may show up in your device list, but when you try to pair and connect it, it may pair but not connect. Some of the bad reviews are related to this misunderstanding. Knowing this, I have now made my application work in series with the module. Another aspect is the Bluetooth LE technology. If you want to use this module properly, you need to study the BLE specification and understand what UUIDs are for services and features. You can get along and connect and communicate without this understanding, but it won't really be 'compatible'. SH-HC-08 has a low level. Although it advertises several UUIDs that serve specific purposes (e.g. to describe a MAC address or a module name), you have to write your own software to make it behave correctly (according to the specification) as a peripheral or transmitter. Connection. I hooked up my SH-HC-08 to an Arduino oriented circuit using a little bit of software that will just send out a word of information when it receives a single byte request. I've modified the application to connect once and just wait for the peripheral (Arduino) to transmit information over the existing open connection every 1 second and this works fairly reliably. A connection, once successfully established, appears to be fairly reliable and will last for many hours unless sudden intervention occurs. The documentation is pretty short. It has all the electrical specs you need, although it was a bit unclear if you could just plug it directly into 5V (the documentation says it's a 3.3V device). However, the board itself says 3.3-6 and I've used it successfully at 5V. The documentation doesn't fully describe the UUID, so I had to do a little research. There is only one shared service and associated capability UUID that it supports. There is some discussion about AT commands, but I haven't had to use them to connect or communicate with a device. I just set the baud rate (using the Arduino "Serial.begin(.)" method) and it worked. It's not clear to me under what circumstances I need to use AT commands besides reconfiguring the device. TL; DR This module is inexpensive and works most of the time. It comes with a useful little Android app for sending and receiving low-level data so you can debug things. However, it is very limited: it has a single "unknown service" UUID with a single associated distinctive UUID that is hard-coded and common to all SH-HC-08 modules. You can set the module name with the AT command, but that's all you get. As described in the documentation, this is a "slave" module, more precisely just a peripheral module. You'll have to write your own code to simply read or write, at a low level, the serial port you plug it into to send data back and forth to the connected client application. Good for fiddling, but not for a properly designed BLE peripheral.

Pros
  • Great for a small home
Cons
  • Volume