Studio Bluetooth Forum Discussions
Hi,
I'm using CYW43012, which is controlled by another MCU through UART flow-control with standard HCI protocol (not Wiced).
Currently, I'm able to make it advertise normally. However, when I'm using a phone to connect to it, it always fail.
When I look into the HCI data, here is the result when phone is trying to connect to Cypress:
---------------------------------
BLE_GAP_EVT_ADV_START --------------------------> Start advertising normally
hciEvtProcessMsg: evt=3E, data=0A00400001010FBA4B90174200000000000000000000000018000000480001
DM_CONN_OPEN_IND, r=0, cid=1 -------------------> Phone is trying to connect
hciEvtProcessMsg: evt=3E, data=14400000 --------> Channel selection Algorithm event
hciEvtProcessMsg: evt=FF, data=5500004000 ------> Vendor HCI event code 0x55, I don't know what the meaning of this event.
hciEvtProcessMsg: evt=05, data=00400008 --------> Disconnect event with reason 0x08 (Supervision timeout)
DM_CONN_CLOSE_IND, r=0, cid=1 ------------------> Connection close
hciEvtProcessMsg: evt=0E, data=01082000
hciEvtProcessCmdCmpl: 2008
hciEvtProcessMsg: evt=0E, data=01092000
hciEvtProcessCmdCmpl: 2009
hciEvtProcessMsg: evt=0E, data=01062000
hciEvtProcessCmdCmpl: 2006
hciEvtProcessMsg: evt=0E, data=010A2000
hciEvtProcessCmdCmpl: 200A
BLE_GAP_EVT_ADV_START --------------------------> Start advertising again
---------------------------------
As you can see, when phone is trying to connect to Cypress, the Cypress sent back a vendor HCI event code 0x55 (marked as RED above).
I've tried finding on google if there is any document about this event code but no luck.
I doubt that this is the reason why the disconnection happens, as the MCU does not handle this event correctly, thus, there is no communication between host and the Cypress board, that leads to disconnect with supervision timeout.
Could you please help explain what is the meaning of this event and what steps do I need to make it connect successfully?
Thank you very much.
Show LessI have seen this posting: What's the difference between CYW20719B2 and CYW20719B1?
But the information referenced there does not seem to be complete. Specifically it looks like the POR State of some pins may have changed in the B2 version of the chip?
After swapping the B2 chip into my design it seems that at least P33 defaults to a logic 'high' on POR?
Is there an official, comprehensive listing of the changes in the B2 version of the chip?
Show LessHi
Customer's products are using A2DP, AVRCP profile.
When applying for certification at SIG,
QDID (99198) registration is required.
I confirmed the following sites.
https://community.cypress.com/docs/DOC-14187
If they register QDID (99198), A2DP and AVRCP are included,
so they don't have to register another QDID.
Is this understanding correct?
Thanks,
Yang
Show LessHello.
CYBT-413034
Wiced Studio: 6.4(MFi)
Question
1. After updating firmware, pairing information and BT mac was erased. How can I maintain it?
(Do I need external storage?)
2. How can I use nvram for BT display name? I'm not sure if nvram is for custom usage.
Show LessHello.
Module: CYBT-413034-02
I want to use "WICED_MOD_Programmer" for update firmware S/W.(WICED_MOD_Prog_v1.5.19.102)
But it failed. I have no idea. Can you please let me know?
Logs
27-08-2020 09:42:32.663: WICEDModuleProg: Test program stopped.
27-08-2020 09:42:50.940: ProgramManager: Selecting_DUT 1/8
27-08-2020 09:42:51.083: Prog[0]COM41 : Reset DUT to HCI mode instead of Recover mode.
27-08-2020 09:42:51.417: ProgKit423028COM41: Exception on Pull Dut#1 CTS_Pin to LowSystem.TimeoutException: 작업 시간을 초과했습니다.
위치: System.IO.Ports.SerialStream.ReadByte(Int32 timeout)
위치: System.IO.Ports.SerialStream.ReadByte()
위치: System.IO.Ports.SerialPort.ReadByte()
위치: CyBLE_MTK_Application.ProgBoard.PullDutPin_SAMI265(Int32 DutNo, DutPinName PinName, PullState PullTo, Int32 WaitTime)
27-08-2020 09:42:51.678: ProgKit423028COM41: Exception on Pull Dut#1 XRES_Pin to LowSystem.TimeoutException: 작업 시간을 초과했습니다.
위치: System.IO.Ports.SerialStream.ReadByte(Int32 timeout)
위치: System.IO.Ports.SerialStream.ReadByte()
위치: System.IO.Ports.SerialPort.ReadByte()
위치: CyBLE_MTK_Application.ProgBoard.PullDutPin_SAMI265(Int32 DutNo, DutPinName PinName, PullState PullTo, Int32 WaitTime)
27-08-2020 09:42:51.956: ProgKit423028COM41: Exception on Pull Dut#1 XRES_Pin to HighSystem.TimeoutException: 작업 시간을 초과했습니다.
위치: System.IO.Ports.SerialStream.ReadByte(Int32 timeout)
위치: System.IO.Ports.SerialStream.ReadByte()
위치: System.IO.Ports.SerialPort.ReadByte()
위치: CyBLE_MTK_Application.ProgBoard.PullDutPin_SAMI265(Int32 DutNo, DutPinName PinName, PullState PullTo, Int32 WaitTime)
27-08-2020 09:42:52.128: ModeSelectBCM20719: Reset DUT#1 to HCI
27-08-2020 09:42:53.446: Prog[0]COM41 : Reset (COM41) Timeout!
27-08-2020 09:42:53.453: Prog[0]COM41 : Soft-Reset Fail COM41
27-08-2020 09:42:53.460: Prog[0]COM41 : Failed to reset on baudrate = 115200
27-08-2020 09:42:53.472: Prog[0]COM41 : Failed to reset DUT
27-08-2020 09:42:53.485: ProgramManager: ---->SetResult [1,1] = TestFailed
27-08-2020 09:42:53.561: ProgramManager: Selecting_DUT 2/8
27-08-2020 09:42:53.585: ProgramManager: Selecting_DUT 3/8
27-08-2020 09:42:53.613: ProgramManager: Selecting_DUT 4/8
27-08-2020 09:42:53.650: ProgramManager: Selecting_DUT 5/8
27-08-2020 09:42:53.808: ProgramManager: Selecting_DUT 6/8
27-08-2020 09:42:53.904: ProgramManager: Selecting_DUT 7/8
27-08-2020 09:42:54.043: ProgramManager: Selecting_DUT 8/8
27-08-2020 09:42:54.511: WICEDModuleProg: Test program stopped.
Show LessHi,
Could anyone please suggest how to use WICED 6.4 mobile APK with CYW20706 module programmed WICED 6.2 application code.
I have observed one thing that a CYBT-343151-02 module programmed with lightness application code of WICED 6.2 is not able to control with WICED 6.4 mobile APK or latest mobile application from play store.
In WICED 6.2 mobile APK, I have created four network with group of 25 device (light) each in Android mobile. Then I exported network details to transfer it to other Android mobile, for example second and third mobile. During installation, the light control (say ON/OFF) was happening through all three mobiles. Next for a period of four month, light was controlled and new device added only through first original device. After four month, second and third mobile could control NETWORK 1,3 & 4 not NETWORK 2. Even I have tried exporting the network details from former mobile and importing to second and third mobile, though connected to network not able to switch ON/OFF.
I have tried one more thing, imported network details to fourth mobile, initially it was not worked but yes after some time. Please advise.
Best regards,
NK
Show LessI am trying to connect to a Senheiser MB Pro 2 headset using the hci_audio_gateway demo, but it is failing in HCI. I have no problems connecting to many other devices including the MB Pro 1, but the MB Pro 2 fails every time. Below is a BTSpy trace that shows the issue. We are receiving a Page Timeout, but I have no idea why. I have tested using the WICED Client Control app with the same result. Is there anything I can do to debug this further or any thoughts towards a solution? Thank you.
15:26:49.932 Sending AG Connect
15:26:49.963 1 cmd_opcode 0xe01
15:26:49.963 SENT [1] Command to HCI. Name: HCI_Create_Connection (Hex Code: 0x0405 Param Len: 13)
15:26:49.963 BD_ADDR of remote device : 00-16-94-4f-a3-42
15:26:49.963 Packet Types Supported : 0xcc18 ( 2-DH1 3-DH1 DM1 DH1 2-DH3 3-DH3 DM3 DH3 2-DH5 3-DH5 DM5 DH5 )
15:26:49.963 Page Scan Repetition Mode : 1 (0x01)
15:26:49.963 Page Scan Mode(BT1.1) / Reserved(BT1.2) : 0 (0x00)
15:26:49.963 Clock Offset : 46756 (0xb6a4)
15:26:49.963 Allow Role Switch : 1 (0x01)
15:26:49.963 RCVD [1] Event from HCI. Name: HCI_Command_Status (Hex Code: 0x0f Param Len: 4)
15:26:49.963 Status : Success (0x00)
15:26:49.963 Num HCI Cmd Packets : 1 (0x01)
15:26:49.963 Cmd Code : 0x0405 (HCI_Create_Connection)
15:26:55.085 RCVD [1] Event from HCI. Name: HCI_Connection_Complete (Hex Code: 0x03 Param Len: 11)
15:26:55.085 Status : Page Timeout (0x04)
15:26:55.085 Connection Handle : 12 (0x000c)
15:26:55.085 BD_ADDR of remote : 00-16-94-4f-a3-42
15:26:55.085 Link Type : 1 (0x01)
15:26:55.085 Encryption Mode : 0 (0x00)
15:26:55.085 1 hci_control_ag_sdp_cback status:0xfff1
15:26:55.085 1 [1]hci_control_ag_rfcomm_start_server: rfcomm_create Res: 0x0 Port: 0x0003
15:26:55.103 1 [1]hci_control_send_ag_event: Sending Event: 3585 to UART
15:26:55.103 [Handle: 1] Rcvd HCI_CONTROL_AG_EVENT_OPEN BDA: 00:01:00:21:d5:1c Status: 1Hi all:
now as I know, the mesh time server has the capability to synchronize the time of the nodes in the mesh network and I have done some experiments. there are two CYW920735Q60EVB-01 boards
. the mesh time server firmware is downloaded into the One of the development boards. the mesh provision client firmware is downloaded into the other. the mesh provision project is configured as
follow in the makefile.mk:
C_FLAGS += -DWICED_BT_MESH_MODEL_TIME_CLIENT_INCLUDED
APP_SRC += mesh_time_client.c
use the mesh client control to create the mesh network by the board which is burned the mesh provision
client firmware. so the mesh time server device joined the mesh network.
when the time server device is joining the network
some models is automatically bound, however the time server is not automatically bound, so when I use the mesh client control to send the time server message , the time server device can not receive the message.
the application interface function for time server is the mesh_time_server_message_handler.
when I send the set time message, the function is never called.
however I think the root cause is the time server model is
not bound when the device joined the mesh network
thanks!
Mandy
Show Less
Hi,
The customer wants to measure throughput. Currently, the evaluation board is operated with CyBluetool,
and and the other side is a general Bluetooth device (without PC connection, not limited to Cypress products).
1, Is it possible to perform a throughput test with CyBluetool even with such a configuration?
2, If possible, could you also tell me how to get the BD_ADDR of the other party?
Thanks,
Yang
Show LessI'm using CYW920719Q40EVB-01 which is connected to an evaluation board (as a SPI slave) having an MCU via SPI interface. In my code, CYW920719Q40EVB-01 is a SPI Master which is sending/receiving array of 1024 bytes to/from my Slave board. The Slave board is powered by the 3.3V supply from CYW920719Q40EVB-01, so both boards use the same voltage.
My experiments:
1- Before connecting to CYW920719Q40EVB-01 board, my SPI slave board has been tested with a similar board with good SPI communication.
2- After CYW920719Q40EVB-01 is connected to the Slave board, I noticed that the data is transmitted from the Master (CYW920719Q40EVB-01) board to slave board but the Master receives all zero data.
3- Using an oscilloscope, I noticed that the High-level on the MISO wire is about 620 mV. Please see the attached snapshot showing the CS and MISO traces.
4- When the MISO wire between the Master and Slave is disconnected, the MISO output from the Slave shows normal High level (3.3V), again connecting the MISO from the Slave to the CYW920719Q40EVB-01 brings the High-level voltage of MISO to 620 mV.
5- The MOSI wire out of CYW920719Q40EVB-01 shows normal voltage level and correct data is received by the Slave board.
6- Different situations like using Pull-Up and Pull-Down or changing SPI1 and SPI2 in SPI initialization did not fix this issue.
My questions:
Why does the MISO input on CYW20719 drops to a lower voltage while the MOSI output shows normal operation?
Is this because I'm using a defective evaluation board (CYW920719Q40EVB-01) or I'm missing something in my coding. I'm using the SPI Master example code provided for CYW920719Q40EVB-01.
Thanks!
Abi
Show Less