Questions on Bluetooth module


i bought your bluetooth module and had some questions / problems during my first steps:
(i earlier, but some years ago, developed a bluetooth stack (my task was HCI and OBEX) which was commercially sold, so i think i am not just a beginner in bluetooth…)

  1. I see there is a master mode and a slave mode.
    According to page 5 of documentation (4/21/2010), client means slave, server means master.
    I understand and agree that the one who builds up the bluetooth connection is a master. But why is it a server ? Isn’t it that a client builds up the connection to the server ?
    But this is only a detail for understanding.

  2. As i understood from page 6 a slave can disable / enable been inquired by +INQ=x. So this means this affects “inquiry mode” of the bluetooth module.
    Is it activated endless or are there conditions (time or when a connection is established), when it is switched off ?
    Does this simultaneous activate pageable mode ? Or is pageable mode always on ?

  3. When doing +INQ=1 as master, i search for other devices. Do i search for multiple devices or always only for one device ? Endless or via timeout ?
    If timeout, how big is it ? Are same devices reported multiple times during my search or only once ?

  4. I played a bit to build up a connection from Samsung Galaxy I9000 (Android 2.1, not yet Froyo Android 2.2). I was not able to find the bluetooth module.
    What i have done: Switched to slave mode (+STWMOD=0) and enabled inquiry mode (+INQ=1).
    Does the module offer a standard SPP or something proprietary ? I don’t know if Android searches only for other devices or also checks
    for supported profiles. Perhaps SPP was not searched by Android…

  5. How do i recognize if commands were successful / failed or were stopped because of a timeout ?
    E.g. if i build up a connection, how do i know it was success (when can i start sending data)
    E.g. how do i recognize if there were errors, e.g wrong BT address, wrong PIN, out of range…
    E.g. Inquiry times out (if this is possible at all)

  6. Is it possible to do the connection without pairing / pin exchange ? As far as i remember pairing was optional.

  7. Same for encryption. Is the link always encrypted ? Or only if remote side requests it ?

  8. How can i detect which (SW) version the module has ? Is there an update of the software possible at all ? What interface / lines do we need to update software in case we
    have soldered the Bluetooth module on our PCB ?

  9. Currently i have connected the module via UART RX and TX. There is a USB, as well as a SPI interface. Are these interface possible as well ?
    Do i get the same commands over these interfaces ? Or does it behave like a standard USB dongle (with HCI over standardized USB endpoints).

  10. There is a PCM interface on the board and interface. How can i use it ? There seem to be now command to control it ?

  11. There are plenty of GPIOs on the module. How can i define them as input / output, get their level or set their level ?

  12. Are power saving modes supported ? Are they automatically enabled ?

Best regards,


Hi Martin,

Thank you so much for being interested in Seeed Bluetooth module. And sorry for my late reply.

Yes, I’m convinced that you are more experienced than us. :open_mouth:

I’m confused by you as we do not post any idea on the document about the relations of slave and client, master and server. However, it can be understood in the way you described.

Using “\r\n+INQ=1\r\n” will make the inquiry effective till a connection is established.
What do you mean about the pageable mode?

The master searches whatever it can search within a fixed time(I don’t know exactly). And same devices will be reported multiple times, while some may be lost.

The module should be found by your smart phone(At least I can get it in my windows mobile). It offers a standard SPP. Please try it many times.

On your smart phone, when the connection is established, there will be two serial ports, and you need to use a serial tool to open the COMx(just try, not exactly which one), and in this process, you may need to input PIN. If the COM is opened, then the connection is success, and you can send or get any data from the serial port.
On your Bluetooth Module, once the connection is established, it will report the status, and the PIO1 will be set high.

Maybe, but as a slave, when the module is inquired, it always needs PIN input, unless the command STAUTO is used.

I’m not sure about that.

Sorry, the current version does not support the function you need, it is just an serial bluetooth, and the software could not be updated by the users.

Sorry again, you can only use the UART and several PIOs for instructions. The other interface is not supported by the current SPP firmware.

Not yet, there is no command to make the module into power saving modes.

May this helpful to you.

All the best,