Where do I find the Cypress vendor specific HCI documentation?
Cypress provides UART for HCI as per the BLE specifications. Please clarify what information are you exactly looking for.
I want to use the dongle of the CY8CKIT-042-BLE development kit to communicate with a BLE device. This dongle is visible as a com-port on Windows. I have understood that you need to send HCI commands on this com port to communicate with the dongle and I am looking for a specification of these HCI commands. I assume that Cypress has defined it's own HCI commands (Vendor Specific) and also uses them in applications such as CySmart
The command/response sent over the COM port to communicate with Dongle is not HCI commands (as per BLE SIG). This is Cypress specific command structure that allows to talk to Dongle through a software tool over COM port.
Currently, we don't have such a document detailing these commands. We are working on getting one such out.
The UART you are seeing the the USB-UART bridge on the CySmart dongle (part of the KitProg on the dongle). It used by the firmware on the dongle (see the BLE_Dongle_CySmart example project , which should be under C:\Program Files (x86)\Cypress\CY8CKIT-042-BLE Kit\1.0\Firmware\BLE Dongle). This FW uses the BLE component in GATT client mode, and the UART for talking with the PC host. So its not a HCI interface.
You can always look at the source code for that project and figure out the commands - but it seems to be binary based protocol from a first glance.
Thanks for the replies. I assumed the UART interface carried HCI, but apparently it doesn't. I'll see how to continue on my problem.
You can configure the BLE component in your project in HCI mode . In HCI mode, the component exposes UART interface as HCI. Try this on kit instead on dongle, as you will need to interface UART pins externally.
Over this UART, you can send any BLE HCI command. All BLE HCI commands as defined in BLE spec are supported by the component.
For a project I have realized a serial communication (UART) with MATLAB to the Cypress BLE Dongle.
To determine the commands which has to be sent I have used the:
"Free Device Monitoring Studio" Download => http://freeserialanalyzer.com/features
You can use this tool to observe the communication between Cy-Smart and the BLE Dongle step by step.
The file: protocol.h (of the Dongle Firmware) contains some of the commands
Combining the results of this tool and the Cy-Smart log, you should be able to create your own application :-)
The picture shows an example
Thanks Dani, I'll have a go at this.
According to previous posts, Psoc 4 BLE module should support HCI commands. I am using CY8CKIT-142 module and I am trying to attach it directly to linux (with bluez stack) via UART. I am using hciattach command on serial port, but when i do hciconfig up on module, it doesn't respond. Is it really possible to communicate with module like that? Maybe there is some pre-compiled hex (I am not sure I am programming module correctly...) that I can flash on module and use UART on some pins?
My aim is to use cypress BLE module directly with standard linux stack, so it would be my central BLE device.