Hello,
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…)
-
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. -
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 ? -
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 ? -
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… -
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) -
Is it possible to do the connection without pairing / pin exchange ? As far as i remember pairing was optional.
-
Same for encryption. Is the link always encrypted ? Or only if remote side requests it ?
-
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 ? -
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). -
There is a PCM interface on the board and interface. How can i use it ? There seem to be now command to control it ?
-
There are plenty of GPIOs on the module. How can i define them as input / output, get their level or set their level ?
-
Are power saving modes supported ? Are they automatically enabled ?
Best regards,
Martin