-
Notifications
You must be signed in to change notification settings - Fork 622
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Throughput issue with Infineon-CYW20704 #622
Comments
In LE, each side can close a connection event. It would be good to figure out which side closes the connection event in your case. Do you other devices to test with? E.g. a second setup with the CYW20704 or an ESP32? You can run le_streamer_client on the other device. Alternatively, an air trace can also show which side stops. Our Raccoon sniffer does not support DLE yet, but others, e.g. Nordic's version support it: https://docs.nordicsemi.com/bundle/nrfutil/page/nrfutil-ble-sniffer/nrfutil-ble-sniffer_0.12.0.html |
There are no direct HCI parameter to control how many packets per connection interval is sent. |
Hi mringwal, |
Thanks for the logs. The master (your phone) sends an empty pdu which allows the slave (your device) to send one PDU. In this PDU, the "more data" flag is not set, which is unexpected. The Controller (CYW20704) should have multiple buffers that are kept full all the time, which then would let it indicate that it has "more data" to send. What baud rate do you use between STM32F407 and CYW20704? |
I use 2M baud rate. I got a new HCI Packet Log by create_packet_log.py, please take a look. |
In the log, it looks like the HCI Dump might slow down your HCI communication - on start, the 15 buffers should fill up in no time. You can add |
Hi, |
Describe the bug
Hi, I am running BTstack v1.6 with the CYW20704 on an STM32F407 with ENABLE_LE_DATA_LENGTH_EXTENSION on. I'm using the gatt_streamer_server demo to test throughput by connecting from my smartphone (Android-13). However, I am only got a maximum TX data rate of about 16 kB/s with different parameters(GATT MTU size,connection interval,packet size per transmit.....). From the HCI packet log of our device, I noticed that the CYW20704 is only sending one packet (244 bytes) per connection interval (15ms). Is there any way to configure the CYW20704 to send multiple packets per connection interval?
To Reproduce
Steps to reproduce the behavior:
Expected behavior
CYW20704 send multiple packets per connection interval, and achieve 30+kB/s TX data rate.
for example, if CYW20704 send 2 packets(244 bytes) per connection interval(15ms), we will got a tx data rate:
(1000 * packet number * packet size) / conn interval = (1000 * 2 * 244) / 15 = 32.5kB/s
HCI Packet Logs
HCI packet log.zip
Environment: (please complete the following information):
Additional context
no.
The text was updated successfully, but these errors were encountered: