[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Sv: [bluetooth-dev] flow control
If your processor is not fast enough handling data from the BT module, there is no other way than doing flow-controll on the HCI level.
I am not familiar with Axis' protocol stack, but I have done flow-control in the direction host controller -> host. This is how to do it:
When you initialize the BT modul, tell the module the size and quantity of you ACL and SCO buffers. This is done by a call to
- Host_Buffer_Size() (see 4.7.41 in spec)
and enable flow-control:
- Set_Host_Controller_To_Host_Flow_Control() (see 4.7.40 in spec)
Now you have enabled flow-control in that direction, and have to tell the module when you have processed the contents of your ACL/SCO buffers. If you have f.ex. 10 ACL buffers, notify the module everytime you have processed 5 buffers. This is done by a command called:
- Host_Number_Of_Completed_Packets() (see 4.7.42 in spec)
That should do it
----- Original Message -----
From: Mandana Amiri <email@example.com>
Sent: Wednesday, June 06, 2001 10:13 PM
Subject: [bluetooth-dev] flow control
> I have an embedded application running axis stack on Ericsson and trying to
> receive a file from DigiAnswer PCMCIA running neighborhood software.
> My embedded application is slow in processing the recieved data and I want to
> use flow control to tell the other side to slow down the transmit, so I can
> process my data.
> I tried to use host_nbr_completed packets, but this is in HCI level. My question
> is how can we notify the lower layers to slow down from a higher layer like
> RFCOMM or application layer?
> To unsubscribe from this list: send the line "unsubscribe bluetooth-dev" in
> the body of a message to firstname.lastname@example.org
To unsubscribe from this list: send the line "unsubscribe bluetooth-dev" in
the body of a message to email@example.com