* [Bluez-devel] Host Controller to Host Flow Control @ 2006-08-08 3:56 Mayank BATRA 2006-08-08 12:52 ` Ulisses Furquim 0 siblings, 1 reply; 41+ messages in thread From: Mayank BATRA @ 2006-08-08 3:56 UTC (permalink / raw) To: BlueZ development Hi, I wanted to know whether Host Controller to Host Flow Control has been implemented in the BlueZ stack? I am interested in giving it a shot in case it is not already there or someone is not working on it. Regards, Mayank ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Bluez-devel mailing list Bluez-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bluez-devel ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [Bluez-devel] Host Controller to Host Flow Control 2006-08-08 3:56 [Bluez-devel] Host Controller to Host Flow Control Mayank BATRA @ 2006-08-08 12:52 ` Ulisses Furquim 2006-08-09 21:58 ` Marcel Holtmann 2006-08-10 8:35 ` Mayank BATRA 0 siblings, 2 replies; 41+ messages in thread From: Ulisses Furquim @ 2006-08-08 12:52 UTC (permalink / raw) To: BlueZ development On 8/8/06, Mayank BATRA <mayank.batra@st.com> wrote: > I wanted to know whether Host Controller to Host Flow Control has been implemented in the BlueZ stack? > I am interested in giving it a shot in case it is not already there or someone is not working on it. No, it's not implemented in the BlueZ stack. I've done a preliminary work on this but haven't completed it yet. You can see my and Marcel Holtmann e-mails on the bluez-devel mailing list archive about this. If you want to help us, please feel free to send in patches. Regards, -- Ulisses ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Bluez-devel mailing list Bluez-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bluez-devel ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [Bluez-devel] Host Controller to Host Flow Control 2006-08-08 12:52 ` Ulisses Furquim @ 2006-08-09 21:58 ` Marcel Holtmann 2006-08-10 4:33 ` Mayank BATRA 2006-08-10 8:35 ` Mayank BATRA 1 sibling, 1 reply; 41+ messages in thread From: Marcel Holtmann @ 2006-08-09 21:58 UTC (permalink / raw) To: BlueZ development Hi Ulisses, > > I wanted to know whether Host Controller to Host Flow Control has been implemented in the BlueZ stack? > > I am interested in giving it a shot in case it is not already there or someone is not working on it. > > No, it's not implemented in the BlueZ stack. I've done a preliminary > work on this but haven't completed it yet. You can see my and Marcel > Holtmann e-mails on the bluez-devel mailing list archive about this. > If you want to help us, please feel free to send in patches. feel free to work together with Mayank to get a testing version we can include into the -mh patch. Regards Marcel ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Bluez-devel mailing list Bluez-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bluez-devel ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [Bluez-devel] Host Controller to Host Flow Control 2006-08-09 21:58 ` Marcel Holtmann @ 2006-08-10 4:33 ` Mayank BATRA 0 siblings, 0 replies; 41+ messages in thread From: Mayank BATRA @ 2006-08-10 4:33 UTC (permalink / raw) To: 'BlueZ development' Hi Marcel, Ulisses, > feel free to work together with Mayank to get a testing version we can > include into the -mh patch. I am ready to help as much as possible. I was reading the spec over the weekend to understand what HC to Host FC requires. Ulisses, can you please provide me some starting ground? Regards, Mayank ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Bluez-devel mailing list Bluez-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bluez-devel ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [Bluez-devel] Host Controller to Host Flow Control 2006-08-08 12:52 ` Ulisses Furquim 2006-08-09 21:58 ` Marcel Holtmann @ 2006-08-10 8:35 ` Mayank BATRA 2006-08-10 13:00 ` Ulisses Furquim 1 sibling, 1 reply; 41+ messages in thread From: Mayank BATRA @ 2006-08-10 8:35 UTC (permalink / raw) To: 'BlueZ development' Hi Ulisses, > If you want to help us, please feel free to send in patches. Here are some of my observations, please correct me in case I am wrong. (i) For enabling FC from HC to Host, the host first of all sends Host Buffer Size Command providing the number of ACL and SCO buffers and their respective sizes. (ii) The host then issues Set Host Controller To Host Flow Control Command. (iii) Host will send a Host Number of Completed Packets Command to the controller. But my question is when?? After every ACL Packet received? Regards, Mayank ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Bluez-devel mailing list Bluez-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bluez-devel ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [Bluez-devel] Host Controller to Host Flow Control 2006-08-10 8:35 ` Mayank BATRA @ 2006-08-10 13:00 ` Ulisses Furquim 2006-08-10 13:43 ` Mayank BATRA 2006-08-14 15:24 ` Mayank BATRA 0 siblings, 2 replies; 41+ messages in thread From: Ulisses Furquim @ 2006-08-10 13:00 UTC (permalink / raw) To: BlueZ development Hi Mayank, On 8/10/06, Mayank BATRA <mayank.batra@st.com> wrote: > Here are some of my observations, please correct me in case I am wrong. > > (i) For enabling FC from HC to Host, the host first of all sends Host Buffer > Size Command providing the number of ACL and SCO buffers and their > respective sizes. > (ii) The host then issues Set Host Controller To Host Flow Control Command. > (iii) Host will send a Host Number of Completed Packets Command to the > controller. But my question is when?? > After every ACL Packet received? Yeah, that is exactly what we've already discussed [1] and Marcel suggested to send a Host Number of Completed Packets command after every packtet for starters even though that is not what we really want (we might want to wait for 8 packets he said). Best regards, -- Ulisses [1] http://article.gmane.org/gmane.linux.bluez.devel/8188 ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Bluez-devel mailing list Bluez-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bluez-devel ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [Bluez-devel] Host Controller to Host Flow Control 2006-08-10 13:00 ` Ulisses Furquim @ 2006-08-10 13:43 ` Mayank BATRA 2006-08-14 15:24 ` Mayank BATRA 1 sibling, 0 replies; 41+ messages in thread From: Mayank BATRA @ 2006-08-10 13:43 UTC (permalink / raw) To: 'BlueZ development' Hi Ulisses, > > (iii) Host will send a Host Number of Completed Packets > Command to the > > controller. But my question is when?? > > After every ACL Packet received? > > Yeah, that is exactly what we've already discussed [1] and Marcel > suggested to send a Host Number of Completed Packets command after > every packtet for starters even though that is not what we really want > (we might want to wait for 8 packets he said). We can wait for 8 packets. But what if at the time of ACL disconnection, less than 8 packets have been received? Regards, Mayank ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Bluez-devel mailing list Bluez-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bluez-devel ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [Bluez-devel] Host Controller to Host Flow Control 2006-08-10 13:00 ` Ulisses Furquim 2006-08-10 13:43 ` Mayank BATRA @ 2006-08-14 15:24 ` Mayank BATRA 2006-08-14 20:26 ` Marcel Holtmann 1 sibling, 1 reply; 41+ messages in thread From: Mayank BATRA @ 2006-08-14 15:24 UTC (permalink / raw) To: 'BlueZ development' Hi Ulisses and Marcel, I propose the following changes (in addition to those suggested by Ulisses earlier) for implementing Controller to Host Flow Control: (i) Update hci.h to include commands like host number of completed packets cmd and set controller to host flow control cmd. (ii) Update hcid.h file to include an additional member to the enum: enum { HCID_SET_NAME, HCID_SET_CLASS, HCID_SET_VOICE, HCID_SET_INQMODE, HCID_SET_PAGETO, HCID_SET_DISCOVTO, HCID_SET_PTYPE, HCID_SET_LM, HCID_SET_LP, + HCID_SET_C_TO_HOST_FC, }; And update the structure device_opts: struct device_opts { unsigned long flags; char *name; uint32_t class; uint16_t voice; uint8_t inqmode; uint16_t pageto; uint16_t pkt_type; uint16_t link_mode; uint16_t link_policy; uint16_t scan; int discovto; + int c_to_host_fc; }; Of course, this means that the hcid.conf (and parser.y) will contain another entry to enable/disable flow control. > > (i) For enabling FC from HC to Host, the host first of all > sends Host Buffer > > Size Command providing the number of ACL and SCO buffers and their > > respective sizes. > > (ii) The host then issues Set Host Controller To Host Flow > Control Command. (iii) The host buffer size command and set controller to host flow controller command can be sent from configure_device() of hcid/main.c > > (iii) Host will send a Host Number of Completed Packets > Command to the > > controller. But, I could not figure out from where should we send the Host Number of completed packets command. Do you have any suggestions. I mean, can you give me an idea where can we get to know the receipt of ACL Data at user level? Thanks. Regards, Mayank ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Bluez-devel mailing list Bluez-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bluez-devel ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [Bluez-devel] Host Controller to Host Flow Control 2006-08-14 15:24 ` Mayank BATRA @ 2006-08-14 20:26 ` Marcel Holtmann 2006-08-17 4:43 ` Mayank BATRA 0 siblings, 1 reply; 41+ messages in thread From: Marcel Holtmann @ 2006-08-14 20:26 UTC (permalink / raw) To: BlueZ development Hi Mayank, > I propose the following changes (in addition to those suggested by Ulisses > earlier) for implementing Controller to Host Flow Control: > > (i) Update hci.h to include commands like host number of completed packets > cmd and set controller to host flow control cmd. we need them for the kernel, bluez-libs and bluez-hcidump. Go ahead and send in patches for it. > (ii) Update hcid.h file to include an additional member to the enum: > enum { > HCID_SET_NAME, > HCID_SET_CLASS, > HCID_SET_VOICE, > HCID_SET_INQMODE, > HCID_SET_PAGETO, > HCID_SET_DISCOVTO, > HCID_SET_PTYPE, > HCID_SET_LM, > HCID_SET_LP, > + HCID_SET_C_TO_HOST_FC, > }; > > And update the structure device_opts: > struct device_opts { > unsigned long flags; > char *name; > uint32_t class; > uint16_t voice; > uint8_t inqmode; > uint16_t pageto; > uint16_t pkt_type; > uint16_t link_mode; > uint16_t link_policy; > uint16_t scan; > int discovto; > + int c_to_host_fc; > }; > > Of course, this means that the hcid.conf (and parser.y) will contain another > entry to enable/disable flow control. No additional config option at the moment. It is not needed right now. If we really want it, we can do it later. > > > (i) For enabling FC from HC to Host, the host first of all > > sends Host Buffer > > > Size Command providing the number of ACL and SCO buffers and their > > > respective sizes. > > > (ii) The host then issues Set Host Controller To Host Flow > > Control Command. > > (iii) The host buffer size command and set controller to host flow > controller command can be sent from configure_device() of hcid/main.c No. This must be done in the kernel. It is not the job of hcid. > > > (iii) Host will send a Host Number of Completed Packets > > Command to the > > > controller. > > But, I could not figure out from where should we send the Host Number of > completed packets command. Do you have any suggestions. I mean, can you give > me an idea where can we get to know the receipt of ACL Data at user level? This must be done in the kernel. It is like sniff mode support. Only the kernel knows all facts. Regards Marcel ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Bluez-devel mailing list Bluez-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bluez-devel ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [Bluez-devel] Host Controller to Host Flow Control 2006-08-14 20:26 ` Marcel Holtmann @ 2006-08-17 4:43 ` Mayank BATRA 2006-08-17 12:59 ` Marcel Holtmann 0 siblings, 1 reply; 41+ messages in thread From: Mayank BATRA @ 2006-08-17 4:43 UTC (permalink / raw) To: 'BlueZ development' Hi Marcel, > > (iii) The host buffer size command and set controller to host flow > > controller command can be sent from configure_device() of > hcid/main.c > > No. This must be done in the kernel. It is not the job of hcid. I still feel that these two commands should be sent from hcid at the time of initialization amd the user should have option to enable/disable this flow control from hcid.conf > > But, I could not figure out from where should we send the > Host Number of > > completed packets command. Do you have any suggestions. I > mean, can you give > > me an idea where can we get to know the receipt of ACL Data > at user level? > > This must be done in the kernel. It is like sniff mode > support. Only the > kernel knows all facts. I agree with this. Regards, Mayank ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Bluez-devel mailing list Bluez-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bluez-devel ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [Bluez-devel] Host Controller to Host Flow Control 2006-08-17 4:43 ` Mayank BATRA @ 2006-08-17 12:59 ` Marcel Holtmann 2006-08-17 11:20 ` Mayank BATRA 0 siblings, 1 reply; 41+ messages in thread From: Marcel Holtmann @ 2006-08-17 12:59 UTC (permalink / raw) To: BlueZ development Hi Mayank, > > > (iii) The host buffer size command and set controller to host flow > > > controller command can be sent from configure_device() of > > hcid/main.c > > > > No. This must be done in the kernel. It is not the job of hcid. > > I still feel that these two commands should be sent from hcid at the time of > initialization amd the user should have option to enable/disable this flow > control from hcid.conf to start something we can do this. Remember that the kernel then have to track these commands to see if it has to use host controller to host flow control or not. Regards Marcel ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Bluez-devel mailing list Bluez-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bluez-devel ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [Bluez-devel] Host Controller to Host Flow Control 2006-08-17 12:59 ` Marcel Holtmann @ 2006-08-17 11:20 ` Mayank BATRA 2006-08-17 13:45 ` Marcel Holtmann 0 siblings, 1 reply; 41+ messages in thread From: Mayank BATRA @ 2006-08-17 11:20 UTC (permalink / raw) To: 'BlueZ development' Hi Marcel, > to start something we can do this. Remember that the kernel > then have to > track these commands to see if it has to use host controller to host > flow control or not. > Hmmm.... I think I understand now why you were insisting this to be done at the kernel side. Because if we set flow control from user side then it will be difficult to inform the kernel about this. I'll try both things (setting flow control and sending host no of completed packets) from kernel side only. Regards, Mayank ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Bluez-devel mailing list Bluez-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bluez-devel ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [Bluez-devel] Host Controller to Host Flow Control 2006-08-17 11:20 ` Mayank BATRA @ 2006-08-17 13:45 ` Marcel Holtmann 2006-08-18 9:54 ` Mayank BATRA 0 siblings, 1 reply; 41+ messages in thread From: Marcel Holtmann @ 2006-08-17 13:45 UTC (permalink / raw) To: BlueZ development Hi Mayank, > > to start something we can do this. Remember that the kernel > > then have to > > track these commands to see if it has to use host controller to host > > flow control or not. > > > > Hmmm.... I think I understand now why you were insisting this to be done at > the kernel side. > Because if we set flow control from user side then it will be difficult to > inform the kernel about this. > I'll try both things (setting flow control and sending host no of completed > packets) from kernel side only. it is not that complicated. We have to do this for a lot of commands that you can use from userspace and the kernel has to detect its execution. You might wanna do it anyway so you should have a look at the examples in hci_event.c inside the kernel code. Regards Marcel ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Bluez-devel mailing list Bluez-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bluez-devel ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [Bluez-devel] Host Controller to Host Flow Control 2006-08-17 13:45 ` Marcel Holtmann @ 2006-08-18 9:54 ` Mayank BATRA 2006-08-18 14:04 ` Marcel Holtmann 0 siblings, 1 reply; 41+ messages in thread From: Mayank BATRA @ 2006-08-18 9:54 UTC (permalink / raw) To: 'BlueZ development' Hi Marcel, > it is not that complicated. We have to do this for a lot of commands > that you can use from userspace and the kernel has to detect its > execution. You might wanna do it anyway so you should have a > look at the > examples in hci_event.c inside the kernel code. I'm almost done with the implementation. I'm testing it currently, but there is a problem. According to the spec, for Host Number of Completed Packets command, no event is generated by the controller if there is no error. But, I think the BlueZ stack is expecting an event for this command. Can you suggest how can I prevent waiting for an event for this command? Dmesg shows the following: Sending Host No of Completed Packets: Sending Host No of Completed Packets: Sending Host No of Completed Packets: Sending Host No of Completed Packets: Sending Host No of Completed Packets: Sending Host No of Completed Packets: Sending Host No of Completed Packets: hci_cmd_task: hci0 command tx timeout Sending Host No of Completed Packets: Sending Host No of Completed Packets: Sending Host No of Completed Packets: hci_cmd_task: hci0 command tx timeout Warning: null TTY for (d8:00) in tty_fasync hci_cmd_task: hci0 command tx timeout Sending Host No of Completed Packets: Sending Host No of Completed Packets: Sending Host No of Completed Packets: Sending Host No of Completed Packets: Sending Host No of Completed Packets: Sending Host No of Completed Packets: Sending Host No of Completed Packets: Sending Host No of Completed Packets: Sending Host No of Completed Packets: hci_cmd_task: hci0 command tx timeout Sending Host No of Completed Packets: hci_cmd_task: hci0 command tx timeout Sending Host No of Completed Packets: Sending Host No of Completed Packets: Sending Host No of Completed Packets: Sending Host No of Completed Packets: Sending Host No of Completed Packets: Sending Host No of Completed Packets: Sending Host No of Completed Packets: Sending Host No of Completed Packets: Sending Host No of Completed Packets: hci_cmd_task: hci0 command tx timeout Sending Host No of Completed Packets: ======================================= Note that "Sending Host No of Completed Packets:" has been added by me. Can you tell me the reason for "hci_cmd_task: hci0 command tx timeout" Regards, Mayank ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Bluez-devel mailing list Bluez-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bluez-devel ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [Bluez-devel] Host Controller to Host Flow Control 2006-08-18 9:54 ` Mayank BATRA @ 2006-08-18 14:04 ` Marcel Holtmann 2006-08-18 12:26 ` Mayank BATRA 0 siblings, 1 reply; 41+ messages in thread From: Marcel Holtmann @ 2006-08-18 14:04 UTC (permalink / raw) To: BlueZ development Hi Mayank, > > it is not that complicated. We have to do this for a lot of commands > > that you can use from userspace and the kernel has to detect its > > execution. You might wanna do it anyway so you should have a > > look at the > > examples in hci_event.c inside the kernel code. > > I'm almost done with the implementation. I'm testing it currently, but there > is a problem. According to the spec, for Host Number of Completed Packets > command, no event is generated by the controller if there is no error. But, > I think the BlueZ stack is expecting an event for this command. Can you > suggest how can I prevent waiting for an event for this command? > > Dmesg shows the following: > > Sending Host No of Completed Packets: > Sending Host No of Completed Packets: > Sending Host No of Completed Packets: > Sending Host No of Completed Packets: > Sending Host No of Completed Packets: > Sending Host No of Completed Packets: > Sending Host No of Completed Packets: > hci_cmd_task: hci0 command tx timeout > Sending Host No of Completed Packets: > Sending Host No of Completed Packets: > Sending Host No of Completed Packets: > hci_cmd_task: hci0 command tx timeout > Warning: null TTY for (d8:00) in tty_fasync > hci_cmd_task: hci0 command tx timeout > Sending Host No of Completed Packets: > Sending Host No of Completed Packets: > Sending Host No of Completed Packets: > Sending Host No of Completed Packets: > Sending Host No of Completed Packets: > Sending Host No of Completed Packets: > Sending Host No of Completed Packets: > Sending Host No of Completed Packets: > Sending Host No of Completed Packets: > hci_cmd_task: hci0 command tx timeout > Sending Host No of Completed Packets: > hci_cmd_task: hci0 command tx timeout > Sending Host No of Completed Packets: > Sending Host No of Completed Packets: > Sending Host No of Completed Packets: > Sending Host No of Completed Packets: > Sending Host No of Completed Packets: > Sending Host No of Completed Packets: > Sending Host No of Completed Packets: > Sending Host No of Completed Packets: > Sending Host No of Completed Packets: > hci_cmd_task: hci0 command tx timeout > Sending Host No of Completed Packets: > > > ======================================= > > Note that "Sending Host No of Completed Packets:" has been added by me. Can > you tell me the reason for "hci_cmd_task: hci0 command tx timeout" I have to see the source code. Otherwise it would be only a wild guess. Regards Marcel ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Bluez-devel mailing list Bluez-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bluez-devel ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [Bluez-devel] Host Controller to Host Flow Control 2006-08-18 14:04 ` Marcel Holtmann @ 2006-08-18 12:26 ` Mayank BATRA 2006-08-21 9:41 ` Mayank BATRA 0 siblings, 1 reply; 41+ messages in thread From: Mayank BATRA @ 2006-08-18 12:26 UTC (permalink / raw) To: 'BlueZ development' [-- Attachment #1: Type: text/plain, Size: 1144 bytes --] Hi Marcel, > > Sending Host No of Completed Packets: > > Sending Host No of Completed Packets: > > Sending Host No of Completed Packets: > > Sending Host No of Completed Packets: > > Sending Host No of Completed Packets: > > Sending Host No of Completed Packets: > > Sending Host No of Completed Packets: > > Sending Host No of Completed Packets: > > Sending Host No of Completed Packets: > > hci_cmd_task: hci0 command tx timeout > > Sending Host No of Completed Packets: > > > > > > ======================================= > > > > Note that "Sending Host No of Completed Packets:" has been > added by me. Can > > you tell me the reason for "hci_cmd_task: hci0 command tx timeout" > > I have to see the source code. Otherwise it would be only a > wild guess. Here you go. Though, it is not the latest version of files that I am working on. It's a quick and dirty approach right now. Sending Host Number of Completed Packets as soon as we receive ACL Data Packet on any connection handle. Once this works, I'll try to send Host Number of completed packets after reception of 8 packets. Regards, Mayank [-- Attachment #2: hci.h.diff --] [-- Type: application/octet-stream, Size: 1265 bytes --] --- C:\Copy of hci.h 2006-05-31 21:12:40.000000000 +-0530 +++ C:\hci.h 2006-08-18 17:43:09.000000000 +-0530 @@ -817,20 +817,38 @@ uint8_t status; uint16_t handle; int8_t level; } __attribute__ ((packed)) read_transmit_power_level_rp; #define READ_TRANSMIT_POWER_LEVEL_RP_SIZE 4 +#define OCF_SET_CONTROLLER_TO_HOST_FC 0x0031 +typedef struct { + uint8_t flow_control_enable; +} __attribute__ ((packed)) set_controller_to_host_fc_cp; +#define SET_CONTROLLER_TO_HOST_FC_CP_SIZE 1 +typedef struct { + uint8_t status; +} __attribute__ ((packed)) set_controller_to_host_fc_rp; +#define SET_CONTROLLER_TO_HOST_FC_RP_SIZE 1 + #define OCF_HOST_BUFFER_SIZE 0x0033 typedef struct { uint16_t acl_mtu; uint8_t sco_mtu; uint16_t acl_max_pkt; uint16_t sco_max_pkt; } __attribute__ ((packed)) host_buffer_size_cp; #define HOST_BUFFER_SIZE_CP_SIZE 7 + +#define OCF_HOST_NUM_OF_COMPLETED_PACKETS 0x0035 +typedef struct { + uint8_t num_of_handles; + uint16_t handle; + uint16_t host_num_of_completed_packets; +} __attribute__ ((packed)) host_num_of_completed_packets_cp; +#define OCF_HOST_NUM_OF_COMPLETED_PACKETS_CP_SIZE 5 #define OCF_READ_LINK_SUPERVISION_TIMEOUT 0x0036 typedef struct { uint8_t status; uint16_t handle; uint16_t link_sup_to; [-- Attachment #3: hci_core.diff --] [-- Type: application/octet-stream, Size: 2400 bytes --] --- C:\Copy of hci_core.c 2003-03-14 03:53:16.000000000 +-0530 +++ C:\hci_core.c 2006-08-18 17:50:19.000000000 +-0530 @@ -73,12 +73,13 @@ #define HCI_MAX_PROTO 2 struct hci_proto *hci_proto[HCI_MAX_PROTO]; /* HCI notifiers list */ static struct notifier_block *hci_notifier; +extern int __controller_to_host_fc; /* ---- HCI notifications ---- */ int hci_register_notifier(struct notifier_block *nb) { return notifier_chain_register(&hci_notifier, nb); @@ -221,24 +222,22 @@ /* Read Local Supported Features */ hci_send_cmd(hdev, OGF_INFO_PARAM, OCF_READ_LOCAL_FEATURES, 0, NULL); /* Read Buffer Size (ACL mtu, max pkt, etc.) */ hci_send_cmd(hdev, OGF_INFO_PARAM, OCF_READ_BUFFER_SIZE, 0, NULL); -#if 0 /* Host buffer size */ { host_buffer_size_cp bs; bs.acl_mtu = __cpu_to_le16(HCI_MAX_ACL_SIZE); bs.sco_mtu = HCI_MAX_SCO_SIZE; bs.acl_max_pkt = __cpu_to_le16(0xffff); bs.sco_max_pkt = __cpu_to_le16(0xffff); hci_send_cmd(hdev, OGF_HOST_CTL, OCF_HOST_BUFFER_SIZE, HOST_BUFFER_SIZE_CP_SIZE, &bs); } -#endif /* Read BD Address */ hci_send_cmd(hdev, OGF_INFO_PARAM, OCF_READ_BD_ADDR, 0, NULL); /* Optional initialization */ @@ -1273,12 +1272,13 @@ /* ACL data packet */ static inline void hci_acldata_packet(struct hci_dev *hdev, struct sk_buff *skb) { hci_acl_hdr *ah = (void *) skb->data; struct hci_conn *conn; __u16 handle, flags; + host_num_of_completed_packets_cp cp; skb_pull(skb, HCI_ACL_HDR_SIZE); handle = __le16_to_cpu(ah->handle); flags = acl_flags(handle); handle = acl_handle(handle); @@ -1287,12 +1287,24 @@ hdev->stat.acl_rx++; hci_dev_lock(hdev); conn = conn_hash_lookup_handle(hdev, handle); hci_dev_unlock(hdev); + /* If flow control has been enabled from Controller to Host + * send Host Number of Completed Packets Command + * Note that there is no event generated for this command + */ + + if(__controller_to_host_fc) { + cp.num_of_handles = 0x01; + cp.handle = handle; + cp.host_num_of_completed_packets = 0x01; + hci_send_cmd(hdev, OGF_HOST_CTL, OCF_HOST_NUM_OF_COMPLETED_PACKETS, + OCF_HOST_NUM_OF_COMPLETED_PACKETS_CP_SIZE, &cp); + } if (conn) { register struct hci_proto *hp; /* Send to upper protocol */ if ((hp = hci_proto[HCI_PROTO_L2CAP]) && hp->recv_acldata) { [-- Attachment #4: hci_event.diff --] [-- Type: application/octet-stream, Size: 1799 bytes --] --- C:\Copy of hci_event.c 2006-08-17 17:37:06.000000000 +-0530 +++ C:\hci_event.c 2006-08-18 17:51:37.000000000 +-0530 @@ -54,12 +54,14 @@ #ifndef HCI_CORE_DEBUG #undef BT_DBG #define BT_DBG( A... ) #endif +int __controller_to_host_fc = 0; + /* Handle HCI Event packets */ /* Command Complete OGF LINK_CTL */ static void hci_cc_link_ctl(struct hci_dev *hdev, __u16 ocf, struct sk_buff *skb) { BT_DBG("%s ocf 0x%x", hdev->name, ocf); @@ -108,12 +110,13 @@ /* Command Complete OGF HOST_CTL */ static void hci_cc_host_ctl(struct hci_dev *hdev, __u16 ocf, struct sk_buff *skb) { __u8 status, param; void *sent; + set_controller_to_host_fc_cp cp; BT_DBG("%s ocf 0x%x", hdev->name, ocf); switch (ocf) { case OCF_RESET: status = *((__u8 *) skb->data); @@ -205,12 +208,33 @@ case OCF_HOST_BUFFER_SIZE: status = *((__u8 *) skb->data); if (status) { BT_DBG("%s OCF_BUFFER_SIZE failed %d", hdev->name, status); hci_req_complete(hdev, status); } + else { + memset(&cp, 0, sizeof(cp)); + /* Set Flow Control on for HCI ACL Data Packets + * and off for HCI Synchronous Data Packets + */ + cp.flow_control_enable = 0x01; + + hci_send_cmd(hdev, OGF_HOST_CTL, OCF_SET_CONTROLLER_TO_HOST_FC, + SET_CONTROLLER_TO_HOST_FC_CP_SIZE, &cp); + } + break; + + case OCF_SET_CONTROLLER_TO_HOST_FC: + status = *((__u8 *) skb->data); + if (status) { + BT_DBG("%s OCF_SET_CONTROLLER_TO_HOST_FC failed %d", hdev->name, status); + hci_req_complete(hdev, status); + } + else { + __controller_to_host_fc = 1; /* Start using Controller to Host Flow Control */ + } break; default: BT_DBG("%s Command complete: ogf HOST_CTL ocf %x", hdev->name, ocf); break; }; [-- Attachment #5: Type: text/plain, Size: 373 bytes --] ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 [-- Attachment #6: Type: text/plain, Size: 164 bytes --] _______________________________________________ Bluez-devel mailing list Bluez-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bluez-devel ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [Bluez-devel] Host Controller to Host Flow Control 2006-08-18 12:26 ` Mayank BATRA @ 2006-08-21 9:41 ` Mayank BATRA 2006-08-21 11:51 ` Marcel Holtmann 0 siblings, 1 reply; 41+ messages in thread From: Mayank BATRA @ 2006-08-21 9:41 UTC (permalink / raw) To: 'BlueZ development' Hi Marcel, > Here you go. Though, it is not the latest version of files > that I am working > on. > It's a quick and dirty approach right now. Sending Host > Number of Completed > Packets as soon as we receive ACL Data Packet on any > connection handle. > Once this works, I'll try to send Host Number of completed > packets after > reception of 8 packets. I am still facing the same issue that since there is no event generated for Host Number of Completed packets command and the BlueZ stack is expecting an event for this command, the command finally times out. dmesg shows "hci_cmd_task: hci0 command tx timeout". The ACL data transfer stops after this. Also, when I disconnect, I see that all the remaining Host Number of completed packets commands that were queued earlier on, are sent finally. Regards, Mayank ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Bluez-devel mailing list Bluez-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bluez-devel ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [Bluez-devel] Host Controller to Host Flow Control 2006-08-21 9:41 ` Mayank BATRA @ 2006-08-21 11:51 ` Marcel Holtmann 2006-08-21 11:28 ` Mayank BATRA 0 siblings, 1 reply; 41+ messages in thread From: Marcel Holtmann @ 2006-08-21 11:51 UTC (permalink / raw) To: BlueZ development Hi Mayank, > > Here you go. Though, it is not the latest version of files > > that I am working > > on. > > It's a quick and dirty approach right now. Sending Host > > Number of Completed > > Packets as soon as we receive ACL Data Packet on any > > connection handle. > > Once this works, I'll try to send Host Number of completed > > packets after > > reception of 8 packets. > > I am still facing the same issue that since there is no event generated for > Host Number of Completed packets command and the BlueZ stack is expecting an > event for this command, the command finally times out. dmesg shows > "hci_cmd_task: hci0 command tx timeout". The ACL data transfer stops after > this. Also, when I disconnect, I see that all the remaining Host Number of > completed packets commands that were queued earlier on, are sent finally. you need to use the raw queue for sending this command. You can't use the normal sent queue. We do the same for vendor specific commands. Regards Marcel ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Bluez-devel mailing list Bluez-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bluez-devel ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [Bluez-devel] Host Controller to Host Flow Control 2006-08-21 11:51 ` Marcel Holtmann @ 2006-08-21 11:28 ` Mayank BATRA 2006-08-21 13:34 ` Marcel Holtmann 0 siblings, 1 reply; 41+ messages in thread From: Mayank BATRA @ 2006-08-21 11:28 UTC (permalink / raw) To: 'BlueZ development' [-- Attachment #1: Type: text/plain, Size: 316 bytes --] Hi Marcel, > you need to use the raw queue for sending this command. You can't use > the normal sent queue. We do the same for vendor specific commands. I am now using the raw queue for sending this command. Can you have a look at the attached hcidump log to see if the behaviour is what we need? Regards, Mayank [-- Attachment #2: c_to_host --] [-- Type: application/octet-stream, Size: 58375 bytes --] HCI sniffer - Bluetooth packet analyzer ver 1.30 device: hci0 snap_len: 1028 filter: 0xffffffff < HCI Command: Read Local Supported Features (0x04|0x0003) plen 0 > HCI Event: Command Status (0x0f) plen 4 0000: 00 01 00 00 .... < HCI Command: Read Buffer Size (0x04|0x0005) plen 0 > HCI Event: Command Complete (0x0e) plen 12 0000: 01 03 10 00 ff ff 0d 00 00 00 00 00 ............ < HCI Command: Host Buffer Size (0x03|0x0033) plen 7 0000: 00 04 ff 08 00 08 00 ....... > HCI Event: Command Complete (0x0e) plen 11 0000: 01 05 10 00 c0 00 40 08 00 08 00 ......@.... < HCI Command: Read BD ADDR (0x04|0x0009) plen 0 > HCI Event: Command Complete (0x0e) plen 4 0000: 01 33 0c 00 .3.. < HCI Command: Set Event Filter (0x03|0x0005) plen 1 0000: 00 . > HCI Event: Command Complete (0x0e) plen 10 0000: 01 09 10 00 5c 6d 35 63 60 00 ....\m5c`. < HCI Command: Write Page Timeout (0x03|0x0018) plen 2 0000: 00 80 .. > HCI Event: Command Complete (0x0e) plen 4 0000: 01 05 0c 00 .... < HCI Command: Write Connection Accept Timeout (0x03|0x0016) plen 2 0000: 00 7d .} > HCI Event: Command Complete (0x0e) plen 4 0000: 01 18 0c 00 .... < HCI Command: Set Host Controller To Host Flow Control (0x03|0x0031) plen 1 0000: 01 . > HCI Event: Command Complete (0x0e) plen 4 0000: 01 16 0c 00 .... < HCI Command: Write Scan Enable (0x03|0x001a) plen 1 0000: 03 . > HCI Event: Command Complete (0x0e) plen 4 0000: 01 31 0c 00 .1.. < HCI Command: Read Stored Link Key (0x03|0x000d) plen 7 0000: 00 00 00 00 00 00 01 ....... > HCI Event: Command Complete (0x0e) plen 4 0000: 01 1a 0c 00 .... < HCI Command: Read Scan Enable (0x03|0x0019) plen 0 > HCI Event: Command Complete (0x0e) plen 8 0000: 01 0d 0c 00 10 00 00 00 ........ > HCI Event: Command Complete (0x0e) plen 5 0000: 01 19 0c 00 03 ..... < HCI Command: Write Authentication Enable (0x03|0x0020) plen 1 0000: 00 . > HCI Event: Command Complete (0x0e) plen 4 0000: 01 20 0c 00 . .. < HCI Command: Write Authentication Enable (0x03|0x0020) plen 1 0000: 00 . > HCI Event: Command Complete (0x0e) plen 4 0000: 01 20 0c 00 . .. < HCI Command: Write Encryption Mode (0x03|0x0022) plen 1 0000: 00 . > HCI Event: Command Complete (0x0e) plen 4 0000: 01 22 0c 00 .".. < HCI Command: Write Local Name (0x03|0x0013) plen 248 0000: 42 6c 75 65 5a 20 28 30 29 00 00 00 00 00 00 00 BlueZ (0)....... 0010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 0020: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 0030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 0040: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 0050: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 0060: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 0070: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 0080: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 0090: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00f0: 00 00 00 00 00 00 00 00 ........ > HCI Event: Command Complete (0x0e) plen 4 0000: 01 13 0c 00 .... < HCI Command: Write Class of Device (0x03|0x0024) plen 3 0000: 00 01 3e ..> > HCI Event: Command Complete (0x0e) plen 4 0000: 01 24 0c 00 .$.. < HCI Command: Write Scan Enable (0x03|0x001a) plen 1 0000: 03 . > HCI Event: Command Complete (0x0e) plen 4 0000: 01 1a 0c 00 .... < HCI Command: Read Local Name (0x03|0x0014) plen 0 > HCI Event: Command Complete (0x0e) plen 252 0000: 01 14 0c 00 42 6c 75 65 5a 20 28 30 29 00 00 00 ....BlueZ (0)... 0010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 0020: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 0030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 0040: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 0050: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 0060: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 0070: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 0080: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 0090: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00f0: 00 00 00 00 00 00 00 00 00 00 00 00 ............ < HCI Command: Read Scan Enable (0x03|0x0019) plen 0 > HCI Event: Command Complete (0x0e) plen 5 0000: 01 19 0c 00 03 ..... < HCI Command: Create Connection (0x01|0x0005) plen 13 0000: 99 03 0d e0 13 00 18 cc 00 00 00 00 01 ............. > HCI Event: Command Status (0x0f) plen 4 0000: 00 01 05 04 .... > HCI Event: Connect Complete (0x03) plen 11 0000: 00 28 00 99 03 0d e0 13 00 01 00 .(......... < ACL data: handle 40 flags 0x02 dlen 12 L2CAP(s): Connect req: psm 3 scid 0x0040 < HCI Command: Write Link Policy Settings (0x02|0x000d) plen 4 0000: 28 00 0f 00 (... > HCI Event: Command Complete (0x0e) plen 6 0000: 01 0d 08 00 28 00 ....(. > HCI Event: Max Slots Change (0x1b) plen 3 0000: 28 00 05 (.. > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: QoS Setup Complete (0x0d) plen 21 0000: 00 28 00 00 01 00 00 00 00 00 00 00 00 00 00 00 .(.............. 0010: 00 00 00 00 00 ..... > ACL data: handle 40 flags 0x02 dlen 16 L2CAP(s): Connect rsp: dcid 0x0046 scid 0x0040 result 0 status 0 Connection successful < ACL data: handle 40 flags 0x02 dlen 16 L2CAP(s): Config req: dcid 0x0046 flags 0x00 clen 4 MTU 1024 < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > ACL data: handle 40 flags 0x02 dlen 12 L2CAP(s): Config req: dcid 0x0040 flags 0x00 clen 0 < ACL data: handle 40 flags 0x02 dlen 14 L2CAP(s): Config rsp: scid 0x0046 flags 0x00 result 0 clen 0 Success < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > ACL data: handle 40 flags 0x02 dlen 18 L2CAP(s): Config rsp: scid 0x0040 flags 0x00 result 0 clen 4 Success MTU 672 < ACL data: handle 40 flags 0x02 dlen 8 L2CAP(d): cid 0x0046 len 4 [psm 3] RFCOMM(s): SABM: cr 1 dlci 0 pf 1 ilen 0 fcs 0x1c < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > ACL data: handle 40 flags 0x02 dlen 8 L2CAP(d): cid 0x0040 len 4 [psm 3] RFCOMM(s): UA: cr 1 dlci 0 pf 1 ilen 0 fcs 0xd7 < ACL data: handle 40 flags 0x02 dlen 18 L2CAP(d): cid 0x0046 len 14 [psm 3] RFCOMM(s): PN CMD: cr 1 dlci 0 pf 0 ilen 10 fcs 0x70 mcc_len 8 dlci 18 frame_type 0 credit_flow 15 pri 0 ack_timer 0 frame_size 667 max_retrans 0 credits 7 < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > ACL data: handle 40 flags 0x02 dlen 16 > ACL data: handle 40 flags 0x01 dlen 2 L2CAP(d): cid 0x0040 len 14 [psm 3] RFCOMM(s): PN RSP: cr 0 dlci 0 pf 0 ilen 10 fcs 0xaa mcc_len 8 dlci 18 frame_type 0 credit_flow 14 pri 0 ack_timer 0 frame_size 667 max_retrans 0 credits 3 < ACL data: handle 40 flags 0x02 dlen 8 L2CAP(d): cid 0x0046 len 4 [psm 3] RFCOMM(s): SABM: cr 1 dlci 18 pf 1 ilen 0 fcs 0x32 < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > ACL data: handle 40 flags 0x02 dlen 8 L2CAP(d): cid 0x0040 len 4 [psm 3] RFCOMM(s): UA: cr 1 dlci 18 pf 1 ilen 0 fcs 0xf9 < ACL data: handle 40 flags 0x02 dlen 12 L2CAP(d): cid 0x0046 len 8 [psm 3] RFCOMM(s): MSC CMD: cr 1 dlci 0 pf 0 ilen 4 fcs 0x70 mcc_len 2 dlci 18 fc 0 rtc 1 rtr 1 ic 0 dv 1 b1 1 b2 1 b3 0 len 0 < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... < ACL data: handle 40 flags 0x02 dlen 9 L2CAP(d): cid 0x0046 len 5 [psm 3] RFCOMM(d): UIH: cr 1 dlci 18 pf 1 ilen 0 fcs 0xd2 credits 33 < ACL data: handle 40 flags 0x02 dlen 15 L2CAP(d): cid 0x0046 len 11 [psm 3] RFCOMM(d): UIH: cr 1 dlci 18 pf 0 ilen 7 fcs 0xce 0000: 80 00 07 10 00 04 00 ....... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > ACL data: handle 40 flags 0x02 dlen 12 L2CAP(d): cid 0x0040 len 8 [psm 3] RFCOMM(s): MSC CMD: cr 0 dlci 0 pf 0 ilen 4 fcs 0xaa mcc_len 2 dlci 18 fc 0 rtc 1 rtr 1 ic 0 dv 1 b1 1 b2 1 b3 0 len 0 < ACL data: handle 40 flags 0x02 dlen 12 L2CAP(d): cid 0x0046 len 8 [psm 3] RFCOMM(s): MSC RSP: cr 1 dlci 0 pf 0 ilen 4 fcs 0x70 mcc_len 2 dlci 18 fc 0 rtc 1 rtr 1 ic 0 dv 1 b1 1 b2 1 b3 0 len 0 < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > ACL data: handle 40 flags 0x02 dlen 12 L2CAP(d): cid 0x0040 len 8 [psm 3] RFCOMM(s): MSC RSP: cr 0 dlci 0 pf 0 ilen 4 fcs 0xaa mcc_len 2 dlci 18 fc 0 rtc 1 rtr 1 ic 0 dv 1 b1 1 b2 1 b3 0 len 0 > ACL data: handle 40 flags 0x02 dlen 9 L2CAP(d): cid 0x0040 len 5 [psm 3] RFCOMM(d): UIH: cr 0 dlci 18 pf 1 ilen 0 fcs 0x8 credits 4 > ACL data: handle 40 flags 0x02 dlen 16 L2CAP(d): cid 0x0040 len 12 [psm 3] RFCOMM(d): UIH: cr 0 dlci 18 pf 1 ilen 7 fcs 0x8 credits 1 0000: a0 00 07 10 00 0f a0 ....... < ACL data: handle 40 flags 0x02 dlen 192 < ACL data: handle 40 flags 0x01 dlen 192 < ACL data: handle 40 flags 0x01 dlen 192 < ACL data: handle 40 flags 0x01 dlen 100 L2CAP(d): cid 0x0046 len 672 [psm 3] RFCOMM(d): UIH: cr 1 dlci 18 pf 0 ilen 667 fcs 0xce 0000: 02 04 00 01 00 19 00 6f 00 62 00 65 00 78 00 73 .......o.b.e.x.s 0010: 00 65 00 72 00 76 00 65 00 72 00 00 c3 00 01 1d .e.r.v.e.r...... 0020: 72 48 03 df 7f 45 4c 46 01 01 01 61 00 00 00 00 rH...ELF...a.... 0030: 00 00 00 00 02 00 28 00 01 00 00 00 18 89 00 00 ......(......... 0040: 34 00 00 00 b4 f7 00 00 02 00 00 00 34 00 20 00 4...........4. . 0050: 06 00 28 00 1d 00 1a 00 06 00 00 00 34 00 00 00 ..(.........4... 0060: 34 80 00 00 34 80 00 00 c0 00 00 00 c0 00 00 00 4...4........... 0070: 05 00 00 00 04 00 00 00 03 00 00 00 f4 00 00 00 ................ 0080: f4 80 00 00 f4 80 00 00 13 00 00 00 13 00 00 00 ................ 0090: 04 00 00 00 01 00 00 00 01 00 00 00 00 00 00 00 ................ 00a0: 00 80 00 00 00 80 00 00 8c 52 00 00 8c 52 00 00 .........R...R.. 00b0: 05 00 00 00 00 80 00 00 01 00 00 00 8c 52 00 00 .............R.. 00c0: 8c 52 01 00 8c 52 01 00 5c 01 00 00 68 01 00 00 .R...R..\...h... 00d0: 06 00 00 00 00 80 00 00 02 00 00 00 48 53 00 00 ............HS.. 00e0: 48 53 01 00 48 53 01 00 a0 00 00 00 a0 00 00 00 HS..HS.......... 00f0: 06 00 00 00 04 00 00 00 04 00 00 00 10 01 00 00 ................ 0100: 10 81 00 00 10 81 00 00 20 00 00 00 20 00 00 00 ........ ... ... 0110: 04 00 00 00 10 00 00 00 2f 6c 69 62 2f 6c 64 2d ......../lib/ld- 0120: 6c 69 6e 75 78 2e 73 6f 2e 32 00 00 00 00 00 00 linux.so.2...... 0130: 00 00 00 00 04 00 00 00 10 00 00 00 01 00 00 00 ................ 0140: 47 4e 55 00 00 00 00 00 02 00 00 00 00 00 00 00 GNU............. 0150: 00 00 00 00 11 00 00 00 24 00 00 00 00 00 00 00 ........$....... 0160: 00 00 00 00 20 00 00 00 18 00 00 00 12 00 00 00 .... ........... 0170: 00 00 00 00 1d 00 00 00 21 00 00 00 1c 00 00 00 ........!....... 0180: 05 00 00 00 1f 00 00 00 00 00 00 00 23 00 00 00 ............#... 0190: 1e 00 00 00 16 00 00 00 22 00 00 00 00 00 00 00 ........"....... 01a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 01b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 01c0: 02 00 00 00 07 00 00 00 00 00 00 00 03 00 00 00 ................ 01d0: 09 00 00 00 0b 00 00 00 01 00 00 00 0d 00 00 00 ................ 01e0: 00 00 00 00 08 00 00 00 10 00 00 00 0a 00 00 00 ................ 01f0: 00 00 00 00 0f 00 00 00 06 00 00 00 0c 00 00 00 ................ 0200: 04 00 00 00 15 00 00 00 00 00 00 00 11 00 00 00 ................ 0210: 17 00 00 00 14 00 00 00 1b 00 00 00 19 00 00 00 ................ 0220: 0e 00 00 00 13 00 00 00 00 00 00 00 1a 00 00 00 ................ 0230: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 0240: b1 00 00 00 18 87 00 00 b4 00 00 00 12 00 00 00 ................ 0250: 0f 01 00 00 28 87 00 00 e8 00 00 00 12 00 00 00 ....(........... 0260: 70 00 00 00 38 87 00 00 10 00 00 00 12 00 00 00 p...8........... 0270: 16 01 00 00 48 87 00 00 10 00 00 00 12 00 00 00 ....H........... 0280: 3f 00 00 00 58 87 00 00 dc 00 00 00 12 00 00 00 ?...X........... 0290: 76 00 00 00 68 87 00 00 20 00 00 v...h... .. < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... < ACL data: handle 40 flags 0x02 dlen 192 < ACL data: handle 40 flags 0x01 dlen 174 L2CAP(d): cid 0x0046 len 362 [psm 3] RFCOMM(d): UIH: cr 1 dlci 18 pf 0 ilen 357 fcs 0xce 0000: 00 12 00 00 00 8e 00 00 00 78 87 00 00 ec 00 00 .........x...... 0010: 00 12 00 00 00 54 00 00 00 88 87 00 00 1c 00 00 .....T.......... 0020: 00 12 00 00 00 61 00 00 00 98 87 00 00 24 00 00 .....a.......$.. 0030: 00 12 00 00 00 aa 00 00 00 a8 87 00 00 24 00 00 .............$.. 0040: 00 12 00 00 00 46 00 00 00 b8 87 00 00 88 02 00 .....F.......... 0050: 00 12 00 00 00 30 00 00 00 c8 87 00 00 3c 01 00 .....0.......<.. 0060: 00 12 00 00 00 cf 00 00 00 d8 87 00 00 24 00 00 .............$.. 0070: 00 12 00 00 00 c8 00 00 00 e8 53 01 00 04 00 00 ..........S..... 0080: 00 11 00 16 00 5b 00 00 00 e8 87 00 00 ec 01 00 .....[.......... 0090: 00 12 00 00 00 da 00 00 00 f8 87 00 00 80 03 00 ................ 00a0: 00 12 00 00 00 83 00 00 00 08 88 00 00 24 00 00 .............$.. 00b0: 00 12 00 00 00 03 01 00 00 18 88 00 00 60 00 00 .............`.. 00c0: 00 12 00 00 00 f1 00 00 00 28 88 00 00 08 01 00 .........(...... 00d0: 00 12 00 00 00 a2 00 00 00 38 88 00 00 ac 02 00 .........8...... 00e0: 00 12 00 00 00 21 00 00 00 48 88 00 00 40 00 00 .....!...H...@.. 00f0: 00 12 00 00 00 7e 00 00 00 58 88 00 00 24 00 00 .....~...X...$.. 0100: 00 12 00 00 00 38 00 00 00 68 88 00 00 a4 00 00 .....8...h...... 0110: 00 12 00 00 00 68 00 00 00 78 88 00 00 4c 00 00 .....h...x...L.. 0120: 00 12 00 00 00 0a 01 00 00 88 88 00 00 10 00 00 ................ 0130: 00 12 00 00 00 1c 01 00 00 98 88 00 00 0c 01 00 ................ 0140: 00 12 00 00 00 b9 00 00 00 a8 88 00 00 9c 00 00 ................ 0150: 00 12 00 00 00 28 00 00 00 b8 88 00 00 24 00 00 .....(.......$.. 0160: 00 12 00 00 00 ..... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > ACL data: handle 40 flags 0x02 dlen 12 L2CAP(d): cid 0x0040 len 8 [psm 3] RFCOMM(d): UIH: cr 0 dlci 18 pf 1 ilen 3 fcs 0x8 credits 2 0000: 90 00 03 ... < ACL data: handle 40 flags 0x02 dlen 192 < ACL data: handle 40 flags 0x01 dlen 192 < ACL data: handle 40 flags 0x01 dlen 192 < ACL data: handle 40 flags 0x01 dlen 100 L2CAP(d): cid 0x0046 len 672 [psm 3] RFCOMM(d): UIH: cr 1 dlci 18 pf 0 ilen 667 fcs 0xce 0000: 02 04 00 48 03 fd 9a 00 00 00 c8 88 00 00 d8 00 ...H............ 0010: 00 00 12 00 00 00 e2 00 00 00 14 cf 00 00 04 00 ................ 0020: 00 00 11 00 0f 00 c0 00 00 00 d8 88 00 00 20 00 .............. . 0030: 00 00 12 00 00 00 4d 00 00 00 e8 88 00 00 24 00 ......M.......$. 0040: 00 00 12 00 00 00 95 00 00 00 f8 88 00 00 10 00 ................ 0050: 00 00 12 00 00 00 01 00 00 00 00 00 00 00 00 00 ................ 0060: 00 00 20 00 00 00 1a 00 00 00 08 89 00 00 28 00 .. ...........(. 0070: 00 00 12 00 00 00 00 5f 5f 67 6d 6f 6e 5f 73 74 .......__gmon_st 0080: 61 72 74 5f 5f 00 6c 69 62 63 2e 73 6f 2e 36 00 art__.libc.so.6. 0090: 73 74 72 63 70 79 00 70 72 69 6e 74 66 00 63 6f strcpy.printf.co 00a0: 6e 6e 65 63 74 00 6d 65 6d 6d 6f 76 65 00 6d 65 nnect.memmove.me 00b0: 6d 63 70 79 00 70 65 72 72 6f 72 00 6d 61 6c 6c mcpy.perror.mall 00c0: 6f 63 00 73 6f 63 6b 65 74 00 73 65 6c 65 63 74 oc.socket.select 00d0: 00 61 62 6f 72 74 00 61 63 63 65 70 74 00 73 74 .abort.accept.st 00e0: 72 72 63 68 72 00 77 72 69 74 65 00 66 70 72 69 rrchr.write.fpri 00f0: 6e 74 66 00 62 69 6e 64 00 73 65 74 73 6f 63 6b ntf.bind.setsock 0100: 6f 70 74 00 73 69 67 6e 61 6c 00 72 65 61 64 00 opt.signal.read. 0110: 73 74 72 6e 63 70 79 00 72 65 61 6c 6c 6f 63 00 strncpy.realloc. 0120: 6c 69 73 74 65 6e 00 73 74 72 6e 63 61 74 00 6d listen.strncat.m 0130: 65 6d 73 65 74 00 73 70 72 69 6e 74 66 00 73 74 emset.sprintf.st 0140: 64 65 72 72 00 67 65 74 73 6f 63 6b 6f 70 74 00 derr.getsockopt. 0150: 5f 5f 78 73 74 61 74 00 5f 49 4f 5f 73 74 64 69 __xstat._IO_stdi 0160: 6e 5f 75 73 65 64 00 5f 5f 6c 69 62 63 5f 73 74 n_used.__libc_st 0170: 61 72 74 5f 6d 61 69 6e 00 73 74 72 6c 65 6e 00 art_main.strlen. 0180: 6f 70 65 6e 00 73 74 72 63 68 72 00 63 6c 6f 73 open.strchr.clos 0190: 65 00 66 72 65 65 00 47 4c 49 42 43 5f 32 2e 30 e.free.GLIBC_2.0 01a0: 00 00 00 00 02 00 02 00 02 00 02 00 02 00 02 00 ................ 01b0: 02 00 02 00 02 00 02 00 02 00 02 00 02 00 02 00 ................ 01c0: 02 00 02 00 02 00 02 00 02 00 02 00 02 00 02 00 ................ 01d0: 02 00 02 00 02 00 02 00 02 00 02 00 02 00 01 00 ................ 01e0: 02 00 02 00 02 00 00 00 02 00 01 00 01 00 10 00 ................ 01f0: 00 00 10 00 00 00 00 00 00 00 10 69 69 0d 00 00 ...........ii... 0200: 02 00 21 01 00 00 00 00 00 00 44 53 01 00 15 22 ..!.......DS..." 0210: 00 00 e8 53 01 00 14 0e 00 00 c4 52 01 00 16 01 ...S.......R.... 0220: 00 00 c8 52 01 00 16 02 00 00 cc 52 01 00 16 03 ...R.......R.... 0230: 00 00 d0 52 01 00 16 04 00 00 d4 52 01 00 16 05 ...R.......R.... 0240: 00 00 d8 52 01 00 16 06 00 00 dc 52 01 00 16 07 ...R.......R.... 0250: 00 00 e0 52 01 00 16 08 00 00 e4 52 01 00 16 09 ...R.......R.... 0260: 00 00 e8 52 01 00 16 0a 00 00 ec 52 01 00 16 0b ...R.......R.... 0270: 00 00 f0 52 01 00 16 0c 00 00 f4 52 01 00 16 0d ...R.......R.... 0280: 00 00 f8 52 01 00 16 0f 00 00 fc 52 01 00 16 10 ...R.......R.... 0290: 00 00 00 53 01 00 16 11 00 00 04 ...S....... < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... < ACL data: handle 40 flags 0x02 dlen 192 < ACL data: handle 40 flags 0x01 dlen 174 L2CAP(d): cid 0x0046 len 362 [psm 3] RFCOMM(d): UIH: cr 1 dlci 18 pf 0 ilen 357 fcs 0xce 0000: 53 01 00 16 12 00 00 08 53 01 00 16 13 00 00 0c S.......S....... 0010: 53 01 00 16 14 00 00 10 53 01 00 16 15 00 00 14 S.......S....... 0020: 53 01 00 16 16 00 00 18 53 01 00 16 17 00 00 1c S.......S....... 0030: 53 01 00 16 18 00 00 20 53 01 00 16 19 00 00 24 S...... S......$ 0040: 53 01 00 16 1a 00 00 28 53 01 00 16 1b 00 00 2c S......(S......, 0050: 53 01 00 16 1c 00 00 30 53 01 00 16 1d 00 00 34 S......0S......4 0060: 53 01 00 16 1f 00 00 38 53 01 00 16 20 00 00 3c S......8S... ..< 0070: 53 01 00 16 21 00 00 40 53 01 00 16 23 00 00 0d S...!..@S...#... 0080: c0 a0 e1 00 d8 2d e9 04 b0 4c e2 92 00 00 eb ec .....-...L...... 0090: 11 00 eb 00 a8 1b e9 04 e0 2d e5 10 e0 9f e5 0e .........-...... 00a0: e0 8f e0 08 f0 be e5 04 c0 9f e5 0c c0 8f e0 00 ................ 00b0: f0 9c e5 a0 cb 00 00 04 c0 9f e5 0c c0 8f e0 00 ................ 00c0: f0 9c e5 94 cb 00 00 04 c0 9f e5 0c c0 8f e0 00 ................ 00d0: f0 9c e5 88 cb 00 00 04 c0 9f e5 0c c0 8f e0 00 ................ 00e0: f0 9c e5 7c cb 00 00 04 c0 9f e5 0c c0 8f e0 00 ...|............ 00f0: f0 9c e5 70 cb 00 00 04 c0 9f e5 0c c0 8f e0 00 ...p............ 0100: f0 9c e5 64 cb 00 00 04 c0 9f e5 0c c0 8f e0 00 ...d............ 0110: f0 9c e5 58 cb 00 00 04 c0 9f e5 0c c0 8f e0 00 ...X............ 0120: f0 9c e5 4c cb 00 00 04 c0 9f e5 0c c0 8f e0 00 ...L............ 0130: f0 9c e5 40 cb 00 00 04 c0 9f e5 0c c0 8f e0 00 ...@............ 0140: f0 9c e5 34 cb 00 00 04 c0 9f e5 0c c0 8f e0 00 ...4............ 0150: f0 9c e5 28 cb 00 00 04 c0 9f e5 0c c0 8f e0 00 ...(............ 0160: f0 9c e5 1c cb ..... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > ACL data: handle 40 flags 0x02 dlen 12 L2CAP(d): cid 0x0040 len 8 [psm 3] RFCOMM(d): UIH: cr 0 dlci 18 pf 1 ilen 3 fcs 0x8 credits 2 0000: 90 00 03 ... < ACL data: handle 40 flags 0x02 dlen 192 < ACL data: handle 40 flags 0x01 dlen 192 < ACL data: handle 40 flags 0x01 dlen 192 < ACL data: handle 40 flags 0x01 dlen 100 L2CAP(d): cid 0x0046 len 672 [psm 3] RFCOMM(d): UIH: cr 1 dlci 18 pf 0 ilen 667 fcs 0xce 0000: 02 04 00 48 03 fd 00 00 04 c0 9f e5 0c c0 8f e0 ...H............ 0010: 00 f0 9c e5 10 cb 00 00 04 c0 9f e5 0c c0 8f e0 ................ 0020: 00 f0 9c e5 04 cb 00 00 04 c0 9f e5 0c c0 8f e0 ................ 0030: 00 f0 9c e5 f8 ca 00 00 04 c0 9f e5 0c c0 8f e0 ................ 0040: 00 f0 9c e5 ec ca 00 00 04 c0 9f e5 0c c0 8f e0 ................ 0050: 00 f0 9c e5 e0 ca 00 00 04 c0 9f e5 0c c0 8f e0 ................ 0060: 00 f0 9c e5 d4 ca 00 00 04 c0 9f e5 0c c0 8f e0 ................ 0070: 00 f0 9c e5 c8 ca 00 00 04 c0 9f e5 0c c0 8f e0 ................ 0080: 00 f0 9c e5 bc ca 00 00 04 c0 9f e5 0c c0 8f e0 ................ 0090: 00 f0 9c e5 b0 ca 00 00 04 c0 9f e5 0c c0 8f e0 ................ 00a0: 00 f0 9c e5 a4 ca 00 00 04 c0 9f e5 0c c0 8f e0 ................ 00b0: 00 f0 9c e5 98 ca 00 00 04 c0 9f e5 0c c0 8f e0 ................ 00c0: 00 f0 9c e5 8c ca 00 00 04 c0 9f e5 0c c0 8f e0 ................ 00d0: 00 f0 9c e5 80 ca 00 00 04 c0 9f e5 0c c0 8f e0 ................ 00e0: 00 f0 9c e5 74 ca 00 00 04 c0 9f e5 0c c0 8f e0 ....t........... 00f0: 00 f0 9c e5 68 ca 00 00 04 c0 9f e5 0c c0 8f e0 ....h........... 0100: 00 f0 9c e5 5c ca 00 00 04 c0 9f e5 0c c0 8f e0 ....\........... 0110: 00 f0 9c e5 50 ca 00 00 04 c0 9f e5 0c c0 8f e0 ....P........... 0120: 00 f0 9c e5 44 ca 00 00 04 c0 9f e5 0c c0 8f e0 ....D........... 0130: 00 f0 9c e5 38 ca 00 00 04 c0 9f e5 0c c0 8f e0 ....8........... 0140: 00 f0 9c e5 2c ca 00 00 00 b0 a0 e3 02 00 bd e8 ....,........... 0150: 0d 20 a0 e1 01 00 2d e9 10 00 9f e5 01 00 2d e9 . ....-.......-. 0160: 0c 00 9f e5 0c 30 9f e5 ba ff ff eb a9 ff ff eb .....0.......... 0170: 00 cf 00 00 04 8a 00 00 f0 86 00 00 0d c0 a0 e1 ................ 0180: 00 dc 2d e9 20 a0 9f e5 20 30 9f e5 0a a0 8f e0 ..-. ... 0...... 0190: 03 30 9a e7 04 b0 4c e2 00 00 53 e3 00 ac 1b 09 .0....L...S..... 01a0: 0f e0 a0 e1 03 f0 a0 e1 00 ac 1b e9 54 c9 00 00 ............T... 01b0: 8c 00 00 00 0d c0 a0 e1 30 d8 2d e9 58 20 9f e5 ........0.-.X .. 01c0: 04 b0 4c e2 00 30 92 e5 02 50 a0 e1 00 00 53 e3 ..L..0...P....S. 01d0: 30 a8 1b 19 44 10 9f e5 00 30 91 e5 00 20 93 e5 0...D....0... .. 01e0: 00 00 52 e3 09 00 00 0a 01 40 a0 e1 00 30 94 e5 ..R......@...0.. 01f0: 04 30 83 e2 00 30 84 e5 0f e0 a0 e1 04 f0 13 e5 .0...0.......... 0200: 00 20 94 e5 00 30 92 e5 00 00 53 e3 f6 ff ff 1a . ...0....S..... 0210: 01 30 a0 e3 00 30 85 e5 30 a8 1b e9 94 52 01 00 .0...0..0....R.. 0220: 90 52 01 00 0d c0 a0 e1 00 d8 2d e9 04 b0 4c e2 .R........-...L. 0230: 00 a8 1b e9 0d c0 a0 e1 00 d8 2d e9 04 b0 4c e2 ..........-...L. 0240: 0c d0 4d e2 10 00 0b e5 14 10 0b e5 00 00 00 ea ..M............. 0250: 28 00 00 ea 04 00 a0 e3 88 10 9f e5 00 20 a0 e3 (............ .. 0260: 0e 02 00 eb 00 30 a0 e1 7c 20 9f e5 00 30 82 e5 .....0..| ...0.. 0270: 10 30 1b e5 01 00 53 e3 13 00 00 1a 68 30 9f e5 .0....S.....h0.. 0280: 00 00 93 e5 00 10 a0 e3 03 20 a0 e3 d3 04 00 eb ......... ...... 0290: 58 00 9f e5 77 ff ff eb 4c 30 9f X...w...L0. < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... < ACL data: handle 40 flags 0x02 dlen 192 < ACL data: handle 40 flags 0x01 dlen 174 L2CAP(d): cid 0x0046 len 362 [psm 3] RFCOMM(d): UIH: cr 1 dlci 18 pf 0 ilen 357 fcs 0xce 0000: e5 00 00 93 e5 35 0f 00 eb 48 30 9f e5 00 20 93 .....5...H0... . 0010: e5 00 00 52 e3 00 00 00 0a 04 00 00 ea 2c 30 9f ...R.........,0. 0020: e5 00 00 93 e5 01 10 a0 e3 27 03 00 eb f5 ff ff .........'...... 0030: ea 20 30 9f e5 00 20 a0 e3 00 20 83 e5 0c 30 9f . 0... ... ...0. 0040: e5 00 00 93 e5 49 02 00 eb d8 ff ff ea 1c 8d 00 .....I.......... 0050: 00 9c 52 01 00 18 cf 00 00 98 52 01 00 00 a8 1b ..R.......R..... 0060: e9 0d c0 a0 e1 f0 df 2d e9 04 b0 4c e2 00 a0 a0 .......-...L.... 0070: e3 18 d0 4d e2 3c a0 0b e5 38 00 0b e5 0a 80 a0 ...M.<...8...... 0080: e1 0a 40 a0 e1 d8 90 9f e5 29 70 4b e2 30 60 4b ..@......)pK.0`K 0090: e2 34 50 4b e2 24 00 00 ea 29 30 5b e5 48 00 53 .4PK.$...)0[.H.S 00a0: e3 03 10 a0 e1 08 00 00 0a 02 00 00 ca 01 00 53 ...............S 00b0: e3 09 00 00 0a 1a 00 00 ea c3 00 53 e3 12 00 00 ...........S.... 00c0: 0a cf 00 53 e3 12 00 00 0a 15 00 00 ea 30 30 1b ...S.........00. 00d0: e5 34 a0 1b e5 3c 30 0b e5 13 00 00 ea 34 00 1b .4...<0......4.. 00e0: e5 a0 0f 80 e0 c0 00 a0 e1 17 ff ff eb 00 40 50 ..............@P 00f0: e2 0d 00 00 0a 30 10 1b e5 04 00 a0 e1 34 20 1b .....0.......4 . 0100: e5 04 80 a0 e1 e2 03 00 eb 07 00 00 ea 54 00 9f .............T.. 0110: e5 00 00 00 ea 50 00 9f e5 30 10 1b e5 2e ff ff .....P...0...... 0120: eb 01 00 00 ea 44 00 9f e5 2b ff ff eb 00 50 8d .....D...+....P. 0130: e5 38 10 1b e5 07 20 a0 e1 00 00 99 e5 06 30 a0 .8.... .......0. 0140: e1 6f 03 00 eb 00 00 50 e3 d2 ff ff 1a 3c 30 1b .o.....P.....<0. 0150: e5 00 00 53 e3 07 00 00 1a 14 00 9f e5 1e ff ff ...S............ 0160: eb 13 00 00 ea ..... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > ACL data: handle 40 flags 0x02 dlen 12 L2CAP(d): cid 0x0040 len 8 [psm 3] RFCOMM(d): UIH: cr 0 dlci 18 pf 1 ilen 3 fcs 0x8 credits 2 0000: 90 00 03 ... < ACL data: handle 40 flags 0x02 dlen 192 < ACL data: handle 40 flags 0x01 dlen 192 < ACL data: handle 40 flags 0x01 dlen 192 < ACL data: handle 40 flags 0x01 dlen 100 L2CAP(d): cid 0x0046 len 672 [psm 3] RFCOMM(d): UIH: cr 1 dlci 18 pf 0 ilen 667 fcs 0xce 0000: 02 04 00 48 03 fd 9c 52 01 00 34 cf 00 00 48 cf ...H...R..4...H. 0010: 00 00 5c cf 00 00 7c cf 00 00 00 00 58 e3 03 00 ..\...|.....X... 0020: 00 1a 24 00 9f e5 08 10 a0 e1 20 80 9f e5 12 ff ..$....... ..... 0030: ff eb 08 00 a0 e1 3c 10 1b e5 0a 20 a0 e1 61 01 ......<.... ..a. 0040: 00 eb 04 00 a0 e1 20 ff ff eb 01 00 00 ea 98 cf ...... ......... 0050: 00 00 c8 cf 00 00 f0 af 1b e9 0d c0 a0 e1 10 d8 ................ 0060: 2d e9 04 b0 4c e2 00 40 a0 e1 02 10 a0 e1 05 00 -...L..@........ 0070: 51 e3 01 f1 9f 97 19 00 00 ea 94 8c 00 00 a0 8c Q............... 0080: 00 00 78 8c 00 00 ac 8c 00 00 ac 8c 00 00 5c 8c ..x...........\. 0090: 00 00 64 00 9f e5 f8 fe ff eb 04 00 a0 e1 10 10 ..d............. 00a0: a0 e3 20 20 a0 e3 66 03 00 eb 10 a8 1b e9 04 00 .. ..f......... 00b0: a0 e1 10 10 a0 e3 20 20 a0 e3 61 03 00 eb 04 00 ...... ..a..... 00c0: a0 e1 8e ff ff eb 10 a8 1b e9 04 00 a0 e1 20 10 .............. . 00d0: a0 e3 f2 ff ff ea 04 00 a0 e1 20 10 a0 e3 ef ff .......... ..... 00e0: ff ea 18 00 9f e5 e4 fe ff eb 04 00 a0 e1 51 10 ..............Q. 00f0: a0 e3 01 20 a0 e1 52 03 00 eb 10 a8 1b e9 e0 cf ... ..R......... 0100: 00 00 fc cf 00 00 0d c0 a0 e1 00 d8 2d e9 04 b0 ............-... 0110: 4c e2 01 00 51 e3 04 30 9f 05 00 10 83 05 00 a8 L...Q..0........ 0120: 1b e9 98 52 01 00 0d c0 a0 e1 00 d8 2d e9 14 30 ...R........-..0 0130: 9f e5 00 20 83 e5 04 b0 4c e2 0c 20 9f e5 01 30 ... ....L.. ...0 0140: a0 e3 00 30 82 e5 00 a8 1b e9 a0 52 01 00 98 52 ...0.......R...R 0150: 01 00 0d c0 a0 e1 70 d8 2d e9 04 b0 4c e2 01 40 ......p.-...L..@ 0160: a0 e1 02 60 a0 e1 03 10 a0 e1 04 50 9b e5 04 00 ...`.......P.... 0170: 51 e3 01 f1 9f 97 2c 00 00 ea 58 8d 00 00 98 8d Q.....,...X..... 0180: 00 00 d0 8d 00 00 64 8d 00 00 e0 8d 00 00 a4 00 ......d......... 0190: 9f e5 b9 fe ff eb 70 a8 1b e9 9c 00 9f e5 b6 fe ......p......... 01a0: ff eb 00 00 56 e3 04 00 00 1a 04 00 a0 e1 08 20 ....V.......... 01b0: 9b e5 05 10 a0 e1 da ff ff eb 70 a8 1b e9 04 00 ..........p..... 01c0: a0 e1 05 10 a0 e1 ce ff ff eb 70 a8 1b e9 02 00 ..........p..... 01d0: 55 e3 06 00 00 ca 00 00 55 e3 04 00 00 ba 04 00 U.......U....... 01e0: a0 e1 10 10 a0 e3 20 20 a0 e3 15 03 00 eb 70 a8 ...... ......p. 01f0: 1b e9 04 00 a0 e1 51 10 a0 e3 01 20 a0 e1 10 03 ......Q.... .... 0200: 00 eb 70 a8 1b e9 04 00 a0 e1 05 20 a0 e1 91 ff ..p........ .... 0210: ff eb 70 a8 1b e9 24 00 9f e5 97 fe ff eb 20 20 ..p...$....... 0220: 9f e5 01 30 a0 e3 00 30 82 e5 70 a8 1b e9 14 00 ...0...0..p..... 0230: 9f e5 91 fe ff eb 70 a8 1b e9 24 d0 00 00 28 d0 ......p...$...(. 0240: 00 00 2c d0 00 00 98 52 01 00 60 d0 00 00 0d c0 ..,....R..`..... 0250: a0 e1 30 d8 2d e9 40 20 9f e5 00 30 92 e5 04 b0 ..0.-.@ ...0.... 0260: 4c e2 00 00 53 e3 09 00 00 1a 02 50 a0 e1 2c 40 L...S......P..,@ 0270: 9f e5 00 00 94 e5 0a 10 a0 e3 3b 02 00 eb 00 00 ..........;..... 0280: 50 e3 30 a8 1b b9 00 30 95 e5 00 00 53 e3 f7 ff P.0....0....S... 0290: ff 0a 0c 30 9f e5 00 00 93 e5 30 ...0......0 < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... < ACL data: handle 40 flags 0x02 dlen 192 < ACL data: handle 40 flags 0x01 dlen 174 L2CAP(d): cid 0x0046 len 362 [psm 3] RFCOMM(d): UIH: cr 1 dlci 18 pf 0 ilen 357 fcs 0xce 0000: a8 1b e9 98 52 01 00 9c 52 01 00 a0 52 01 00 0d ....R...R...R... 0010: c0 a0 e1 00 d8 2d e9 04 b0 4c e2 6c 02 00 eb e3 .....-...L.l.... 0020: ff ff eb 08 20 9f e5 00 30 a0 e3 00 30 82 e5 00 .... ...0...0... 0030: a8 1b e9 98 52 01 00 0d c0 a0 e1 00 d8 2d e9 04 ....R........-.. 0040: b0 4c e2 00 10 a0 e1 03 00 a0 e3 64 20 4b e2 58 .L.........d K.X 0050: d0 4d e2 4e fe ff eb 38 00 1b e5 00 a8 1b e9 0d .M.N...8........ 0060: c0 a0 e1 f0 d8 2d e9 04 b0 4c e2 00 40 a0 e1 01 .....-...L..@... 0070: 70 a0 e1 ef ff ff eb 00 20 a0 e1 00 20 87 e5 64 p....... ... ..d 0080: 00 9f e5 04 10 a0 e1 55 fe ff eb 04 00 a0 e1 00 .......U........ 0090: 10 a0 e3 01 20 a0 e1 61 fe ff eb 00 60 a0 e1 01 .... ..a....`... 00a0: 00 76 e3 00 00 a0 e3 f0 a8 1b 09 00 00 97 e5 27 .v.............' 00b0: fe ff eb 00 50 50 e2 09 00 00 0a 06 00 a0 e1 00 ....PP.......... 00c0: 20 97 e5 05 10 a0 e1 71 fe ff eb 00 40 a0 e1 06 ......q....@... 00d0: 00 a0 e1 02 fe ff eb 05 00 a0 e1 00 40 87 e5 f0 ............@... 00e0: a8 1b e9 05 00 a0 e1 f0 a8 1b e9 70 d0 00 00 0d ...........p.... 00f0: c0 a0 e1 f0 dd 2d e9 04 b0 4c e2 00 70 a0 e1 01 .....-...L..p... 0100: 60 a0 e1 06 00 a0 e1 f0 10 4b e2 d4 d0 4d e2 d2 `........K...M.. 0110: ff ff eb 00 80 50 e2 08 00 a0 01 7e 00 00 0a 06 .....P.....~.... 0120: 00 a0 e1 2e 10 a0 e3 e5 fd ff eb 00 00 50 e3 d8 .............P.. 0130: a0 9f e5 4b 00 00 0a 01 30 f0 e5 76 20 43 e2 76 ...K....0..v C.v 0140: 00 53 e3 07 00 00 1a 01 30 d0 e5 63 20 43 e2 63 .S......0..c C.c 0150: 00 53 e3 03 00 00 1a 02 30 d0 e5 66 20 43 e2 66 .S......0..f C.f 0160: 00 53 e3 03 20 .S.. > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > ACL data: handle 40 flags 0x02 dlen 12 L2CAP(d): cid 0x0040 len 8 [psm 3] RFCOMM(d): UIH: cr 0 dlci 18 pf 1 ilen 3 fcs 0x8 credits 2 0000: 90 00 03 ... < ACL data: handle 40 flags 0x02 dlen 192 < ACL data: handle 40 flags 0x01 dlen 192 < ACL data: handle 40 flags 0x01 dlen 192 < ACL data: handle 40 flags 0x01 dlen 100 L2CAP(d): cid 0x0046 len 672 [psm 3] RFCOMM(d): UIH: cr 1 dlci 18 pf 0 ilen 667 fcs 0xce 0000: 02 04 00 48 03 fd d0 05 00 00 52 e3 03 00 00 1a ...H......R..... 0010: 9c 00 9f e5 9c a0 9f e5 19 fe ff eb 39 00 00 ea ............9... 0020: 00 30 d0 e5 76 20 43 e2 76 00 53 e3 03 10 a0 e1 .0..v C.v.S..... 0030: 07 00 00 1a 01 30 d0 e5 63 20 43 e2 63 00 53 e3 .....0..c C.c.S. 0040: 03 00 00 1a 02 30 d0 e5 73 20 43 e2 73 00 53 e3 .....0..s C.s.S. 0050: 03 20 d0 05 00 00 52 e3 03 00 00 1a 58 00 9f e5 . ....R.....X... 0060: 58 a0 9f e5 06 fe ff eb 26 00 00 ea 74 20 41 e2 X.......&...t A. 0070: 74 00 51 e3 07 00 00 1a 01 30 d0 e5 78 20 43 e2 t.Q......0..x C. 0080: 78 00 53 e3 03 00 00 1a 02 30 d0 e5 74 20 43 e2 x.S......0..t C. 0090: 74 00 53 e3 03 20 d0 05 00 00 52 e3 09 00 00 1a t.S.. ....R..... 00a0: 1c 00 9f e5 04 a0 9f e5 f5 fd ff eb 15 00 00 ea ................ 00b0: 6f 6d 65 6d 88 d0 00 00 72 64 64 61 ac d0 00 00 omem....rdda.... 00c0: 65 74 61 64 cc d0 00 00 70 20 41 e2 70 00 51 e3 etad....p A.p.Q. 00d0: 07 00 00 1a 01 30 d0 e5 72 20 43 e2 72 00 53 e3 .....0..r C.r.S. 00e0: 03 00 00 1a 02 30 d0 e5 63 20 43 e2 63 00 53 e3 .....0..c C.c.S. 00f0: 03 20 d0 05 00 00 52 e3 02 00 00 1a bc 00 9f e5 . ....R......... 0100: bc a0 9f e5 de fd ff eb 07 00 a0 e1 02 10 a0 e3 ................ 0110: f4 01 00 eb 00 50 a0 e1 ec 40 4b e2 04 00 a0 e1 .....P...@K..... 0120: 06 10 a0 e1 c8 20 a0 e3 b0 02 00 eb 00 00 8d e5 ..... .......... 0130: 00 60 a0 e3 04 60 8d e5 07 00 a0 e1 05 10 a0 e1 .`...`.......... 0140: 01 20 a0 e3 04 30 a0 e1 08 02 00 eb 04 40 a0 e3 . ...0.......@.. 0150: 50 00 8d e8 07 00 a0 e1 05 10 a0 e1 f0 30 1b e5 P............0.. 0160: c3 20 a0 e3 01 02 00 eb 58 30 9f e5 00 20 93 e5 . ......X0... .. 0170: 01 00 52 e3 05 00 00 0a 50 00 8d e8 07 00 a0 e1 ..R.....P....... 0180: 05 10 a0 e1 cf 20 a0 e3 0a 30 a0 e1 f7 01 00 eb ..... ...0...... 0190: 04 60 8d e5 f0 30 1b e5 00 30 8d e5 07 00 a0 e1 .`...0...0...... 01a0: 05 10 a0 e1 48 20 a0 e3 08 30 a0 e1 ef 01 00 eb ....H ...0...... 01b0: 08 00 a0 e1 c6 fd ff eb 05 00 a0 e1 02 00 00 ea ................ 01c0: ec d0 00 00 68 63 6e 6c a4 52 01 00 f0 ad 1b e9 ....hcnl.R...... 01d0: 0d c0 a0 e1 f0 d9 2d e9 04 b0 4c e2 00 50 a0 e1 ......-...L..P.. 01e0: 12 4e 4b e2 04 00 a0 e1 01 80 a0 e1 00 10 a0 e3 .NK............. 01f0: 02 70 a0 e1 ff 20 a0 e3 01 dc 4d e2 b8 fd ff eb .p... ....M..... 0200: 88 00 9f e5 05 10 a0 e1 9d fd ff eb 80 10 9f e5 ................ 0210: 04 00 a0 e1 be fd ff eb 05 00 a0 e1 2f 10 a0 e3 ............/... 0220: a3 fd ff eb 00 10 50 e2 04 60 a0 e1 05 10 a0 01 ......P..`...... 0230: 01 10 81 12 06 00 a0 e1 fa 20 a0 e3 44 fd ff eb ......... ..D... 0240: 06 00 a0 e1 42 10 a0 e3 6d 2f a0 e3 02 20 82 e2 ....B...m/... .. 0250: 9b fd ff eb 00 50 50 e2 0f 00 00 ba 05 00 a0 e1 .....PP......... 0260: 08 10 a0 e1 07 20 a0 e1 41 fd ff eb 00 40 a0 e1 ..... ..A....@.. 0270: 05 00 a0 e1 42 fd ff eb 06 10 a0 e1 14 00 9f e5 ....B........... 0280: 04 20 a0 e1 7e fd ff eb 04 00 a0 e1 05 00 00 ea . ..~........... 0290: 0c d1 00 00 1c d1 00 00 24 d1 00 ........$.. < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... < ACL data: handle 40 flags 0x02 dlen 192 < ACL data: handle 40 flags 0x01 dlen 174 L2CAP(d): cid 0x0046 len 362 [psm 3] RFCOMM(d): UIH: cr 1 dlci 18 pf 0 ilen 357 fcs 0xce 0000: 00 06 00 a0 e1 3b fd ff eb 00 00 e0 e3 f0 a9 1b .....;.......... 0010: e9 0d c0 a0 e1 f0 d8 2d e9 04 b0 4c e2 00 70 a0 .......-...L..p. 0020: e1 02 50 a0 e1 00 60 51 e2 00 00 a0 e3 f0 a8 1b ..P...`Q........ 0030: 09 a4 00 80 e2 47 fd ff eb 00 40 50 e2 04 00 a0 .....G....@P.... 0040: 01 f0 a8 1b 09 04 00 a0 e1 00 10 a0 e3 a4 20 a0 .............. . 0050: e3 7c fd ff eb 30 60 84 e5 a5 30 a0 e1 01 30 03 .|...0`...0...0. 0060: e2 18 30 84 e5 25 21 a0 e1 01 20 02 e2 1c 20 84 ..0..%!... ... . 0070: e5 a5 31 a0 e1 01 30 03 e2 20 30 84 e5 00 20 e0 ..1...0.. 0... . 0080: e3 08 20 84 e5 0c 20 84 e5 10 20 84 e5 80 30 a0 .. ... ... ...0. 0090: e3 14 30 84 e5 34 70 84 e5 00 50 a0 e3 38 50 84 ..0..4p...P..8P. 00a0: e5 01 0b a0 e3 65 0d 00 eb 05 00 50 e1 28 00 84 .....e.....P.(.. 00b0: e5 13 00 00 0a 01 0b a0 e3 60 0d 00 eb 05 00 50 .........`.....P 00c0: e1 24 00 84 e5 0e 00 00 0a 01 3b a0 e3 03 20 a0 .$........;... . 00d0: e1 02 20 c4 e5 43 34 a0 e1 03 30 c4 e5 ff 20 a0 .. ..C4...0... . 00e0: e3 00 20 c4 e5 01 50 c4 e5 04 50 c4 e5 05 30 c4 .. ...P...P...0. 00f0: e5 0d 00 a0 e3 01 10 a0 e3 06 fd ff eb 04 00 a0 ................ 0100: e1 f0 a8 1b e9 24 00 94 e5 00 00 50 e3 00 00 00 .....$.....P.... 0110: 0a 7f 0d 00 eb 28 00 94 e5 00 00 50 e3 00 00 00 .....(.....P.... 0120: 0a 7b 0d 00 eb 04 00 a0 e1 42 fd ff eb 00 00 a0 .{.......B...... 0130: e3 f0 a8 1b e9 0d c0 a0 e1 00 d8 2d e9 04 b0 4c ...........-...L 0140: e2 00 c0 50 e2 00 00 e0 03 00 a8 1b 09 00 00 51 ...P...........Q 0150: e3 07 00 00 0a 01 e0 a0 e1 0f 00 be e8 88 c0 8c ................ 0160: e2 0f 00 ac e8 ..... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > ACL data: handle 40 flags 0x02 dlen 12 L2CAP(d): cid 0x0040 len 8 [psm 3] RFCOMM(d): UIH: cr 0 dlci 18 pf 1 ilen 3 fcs 0x8 credits 2 0000: 90 00 03 ... < ACL data: handle 40 flags 0x02 dlen 192 < ACL data: handle 40 flags 0x01 dlen 192 < ACL data: handle 40 flags 0x01 dlen 192 *************************** File Transfer Part Removed *********************** < ACL data: handle 40 flags 0x01 dlen 174 L2CAP(d): cid 0x0046 len 362 [psm 3] RFCOMM(d): UIH: cr 1 dlci 18 pf 0 ilen 357 fcs 0xce 0000: 61 74 61 5f 73 74 61 72 74 00 67 5f 6e 65 74 62 ata_start.g_netb 0010: 75 66 5f 70 75 74 5f 64 61 74 61 00 4f 42 45 58 uf_put_data.OBEX 0020: 5f 54 72 61 6e 73 70 6f 72 74 44 69 73 63 6f 6e _TransportDiscon 0030: 6e 65 63 74 00 70 72 69 6e 74 66 40 40 47 4c 49 nect.printf@@GLI 0040: 42 43 5f 32 2e 30 00 6f 62 65 78 5f 6f 62 6a 65 BC_2.0.obex_obje 0050: 63 74 5f 72 65 61 64 73 74 72 65 61 6d 00 62 69 ct_readstream.bi 0060: 6e 64 40 40 47 4c 49 42 43 5f 32 2e 30 00 5f 66 nd@@GLIBC_2.0._f 0070: 69 6e 69 00 69 72 6f 62 65 78 5f 6c 69 73 74 65 ini.irobex_liste 0080: 6e 00 6d 65 6d 63 70 79 40 40 47 4c 49 42 43 5f n.memcpy@@GLIBC_ 0090: 32 2e 30 00 4f 42 45 58 5f 4f 62 6a 65 63 74 4e 2.0.OBEX_ObjectN 00a0: 65 77 00 73 74 72 72 63 68 72 40 40 47 4c 49 42 ew.strrchr@@GLIB 00b0: 43 5f 32 2e 30 00 6f 62 65 78 5f 63 6c 69 65 6e C_2.0.obex_clien 00c0: 74 00 4f 42 45 58 5f 52 65 73 70 6f 6e 73 65 54 t.OBEX_ResponseT 00d0: 6f 53 74 72 69 6e 67 00 4f 42 45 58 5f 53 65 74 oString.OBEX_Set 00e0: 43 75 73 74 6f 6d 44 61 74 61 00 4f 42 45 58 5f CustomData.OBEX_ 00f0: 55 6e 69 63 6f 64 65 54 6f 43 68 61 72 00 69 6e UnicodeToChar.in 0100: 6f 62 65 78 5f 70 72 65 70 61 72 65 5f 6c 69 73 obex_prepare_lis 0110: 74 65 6e 00 4f 42 45 58 5f 4f 62 6a 65 63 74 47 ten.OBEX_ObjectG 0120: 65 74 4e 65 78 74 48 65 61 64 65 72 00 6f 62 65 etNextHeader.obe 0130: 78 5f 69 6e 73 65 72 74 5f 63 6f 6e 6e 65 63 74 x_insert_connect 0140: 66 72 61 6d 65 00 49 72 4f 42 45 58 5f 54 72 61 frame.IrOBEX_Tra 0150: 6e 73 70 6f 72 74 43 6f 6e 6e 65 63 74 00 6f 70 nsportConnect.op 0160: 65 6e 40 40 47 en@@G > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > ACL data: handle 40 flags 0x02 dlen 12 L2CAP(d): cid 0x0040 len 8 [psm 3] RFCOMM(d): UIH: cr 0 dlci 18 pf 1 ilen 3 fcs 0x8 credits 2 0000: 90 00 03 ... < ACL data: handle 40 flags 0x02 dlen 192 < ACL data: handle 40 flags 0x01 dlen 192 < ACL data: handle 40 flags 0x01 dlen 192 < ACL data: handle 40 flags 0x01 dlen 100 L2CAP(d): cid 0x0046 len 672 [psm 3] RFCOMM(d): UIH: cr 1 dlci 18 pf 0 ilen 667 fcs 0xce 0000: 82 03 40 49 03 3d 4c 49 42 43 5f 32 2e 30 00 67 ..@I.=LIBC_2.0.g 0010: 5f 6e 65 74 62 75 66 5f 70 72 65 70 65 6e 64 5f _netbuf_prepend_ 0020: 68 64 72 00 67 5f 6e 65 74 62 75 66 5f 74 72 69 hdr.g_netbuf_tri 0030: 6d 00 4f 42 45 58 5f 48 61 6e 64 6c 65 49 6e 70 m.OBEX_HandleInp 0040: 75 74 00 65 61 73 79 5f 72 65 61 64 66 69 6c 65 ut.easy_readfile 0050: 00 67 5f 6e 65 74 62 75 66 5f 68 65 61 64 72 6f .g_netbuf_headro 0060: 6f 6d 00 4f 42 45 58 5f 4f 62 6a 65 63 74 53 65 om.OBEX_ObjectSe 0070: 74 4e 6f 6e 48 64 72 44 61 74 61 00 4f 42 45 58 tNonHdrData.OBEX 0080: 5f 47 65 74 46 44 00 62 74 6f 62 65 78 5f 64 69 _GetFD.btobex_di 0090: 73 63 6f 6e 6e 65 63 74 5f 72 65 71 75 65 73 74 sconnect_request 00a0: 00 5f 65 64 61 74 61 00 5f 47 4c 4f 42 41 4c 5f ._edata._GLOBAL_ 00b0: 4f 46 46 53 45 54 5f 54 41 42 4c 45 5f 00 66 72 OFFSET_TABLE_.fr 00c0: 65 65 40 40 47 4c 49 42 43 5f 32 2e 30 00 5f 65 ee@@GLIBC_2.0._e 00d0: 6e 64 00 66 69 6e 69 73 68 65 64 00 77 61 69 74 nd.finished.wait 00e0: 5f 66 6f 72 5f 72 73 70 00 6d 65 6d 73 65 74 40 _for_rsp.memset@ 00f0: 40 47 4c 49 42 43 5f 32 2e 30 00 63 6f 6e 6e 65 @GLIBC_2.0.conne 0100: 63 74 40 40 47 4c 49 42 43 5f 32 2e 30 00 73 74 ct@@GLIBC_2.0.st 0110: 72 6e 63 70 79 40 40 47 4c 49 42 43 5f 32 2e 30 rncpy@@GLIBC_2.0 0120: 00 6f 62 65 78 5f 74 72 61 6e 73 70 6f 72 74 5f .obex_transport_ 0130: 63 6f 6e 6e 65 63 74 5f 72 65 71 75 65 73 74 00 connect_request. 0140: 69 72 6f 62 65 78 5f 70 72 65 70 61 72 65 5f 63 irobex_prepare_c 0150: 6f 6e 6e 65 63 74 00 69 6e 6f 62 65 78 5f 6c 69 onnect.inobex_li 0160: 73 74 65 6e 00 4f 42 45 58 5f 43 6c 65 61 6e 75 sten.OBEX_Cleanu 0170: 70 00 4f 42 45 58 5f 4f 62 6a 65 63 74 47 65 74 p.OBEX_ObjectGet 0180: 4e 6f 6e 48 64 72 44 61 74 61 00 62 75 69 6c 64 NonHdrData.build 0190: 5f 6f 62 6a 65 63 74 5f 66 72 6f 6d 5f 66 69 6c _object_from_fil 01a0: 65 00 70 75 74 5f 64 6f 6e 65 00 6f 62 65 78 5f e.put_done.obex_ 01b0: 72 65 73 70 6f 6e 73 65 5f 72 65 71 75 65 73 74 response_request 01c0: 00 5f 49 4f 5f 73 74 64 69 6e 5f 75 73 65 64 00 ._IO_stdin_used. 01d0: 6f 62 65 78 5f 6f 62 6a 65 63 74 5f 6e 65 77 00 obex_object_new. 01e0: 49 72 4f 42 45 58 5f 53 65 72 76 65 72 52 65 67 IrOBEX_ServerReg 01f0: 69 73 74 65 72 00 73 70 72 69 6e 74 66 40 40 47 ister.sprintf@@G 0200: 4c 49 42 43 5f 32 2e 30 00 5f 5f 64 61 74 61 5f LIBC_2.0.__data_ 0210: 73 74 61 72 74 00 6c 61 73 74 5f 72 73 70 00 62 start.last_rsp.b 0220: 74 6f 62 65 78 5f 61 63 63 65 70 74 00 73 6f 63 tobex_accept.soc 0230: 6b 65 74 40 40 47 4c 49 42 43 5f 32 2e 30 00 6f ket@@GLIBC_2.0.o 0240: 62 65 78 5f 70 72 6f 74 6f 63 6f 6c 5f 74 79 70 bex_protocol_typ 0250: 65 00 73 65 72 76 65 72 5f 72 65 71 75 65 73 74 e.server_request 0260: 00 6f 62 65 78 5f 72 65 73 70 6f 6e 73 65 5f 74 .obex_response_t 0270: 6f 5f 73 74 72 69 6e 67 00 67 5f 6e 65 74 62 75 o_string.g_netbu 0280: 66 5f 72 65 73 65 72 76 65 00 6f 62 65 78 5f 64 f_reserve.obex_d 0290: 65 6c 65 74 65 5f 73 6f 63 6b 65 elete_socke < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... < ACL data: handle 40 flags 0x02 dlen 174 L2CAP(d): cid 0x0046 len 170 [psm 3] RFCOMM(d): UIH: cr 1 dlci 18 pf 0 ilen 165 fcs 0xce 0000: 74 00 4f 42 45 58 5f 4f 62 6a 65 63 74 41 64 64 t.OBEX_ObjectAdd 0010: 48 65 61 64 65 72 00 5f 5f 72 65 67 69 73 74 65 Header.__registe 0020: 72 5f 66 72 61 6d 65 5f 69 6e 66 6f 00 4f 42 45 r_frame_info.OBE 0030: 58 5f 4f 62 6a 65 63 74 53 65 74 48 64 72 4f 66 X_ObjectSetHdrOf 0040: 66 73 65 74 00 67 5f 6e 65 74 62 75 66 5f 72 65 fset.g_netbuf_re 0050: 63 79 63 6c 65 00 72 65 61 64 40 40 47 4c 49 42 cycle.read@@GLIB 0060: 43 5f 32 2e 30 00 6f 62 65 78 5f 64 75 6d 70 00 C_2.0.obex_dump. 0070: 5f 5f 67 6d 6f 6e 5f 73 74 61 72 74 5f 5f 00 6f __gmon_start__.o 0080: 62 65 78 5f 6f 62 6a 65 63 74 5f 72 65 63 65 69 bex_object_recei 0090: 76 65 00 73 74 72 63 70 79 40 40 47 4c 49 42 43 ve.strcpy@@GLIBC 00a0: 5f 32 2e 30 00 _2.0. > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > ACL data: handle 40 flags 0x02 dlen 12 L2CAP(d): cid 0x0040 len 8 [psm 3] RFCOMM(d): UIH: cr 0 dlci 18 pf 1 ilen 3 fcs 0x8 credits 2 0000: a0 00 03 ... < ACL data: handle 40 flags 0x02 dlen 11 L2CAP(d): cid 0x0046 len 7 [psm 3] RFCOMM(d): UIH: cr 1 dlci 18 pf 0 ilen 3 fcs 0xce 0000: 81 00 03 ... < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > ACL data: handle 40 flags 0x02 dlen 12 L2CAP(d): cid 0x0040 len 8 [psm 3] RFCOMM(d): UIH: cr 0 dlci 18 pf 1 ilen 3 fcs 0x8 credits 1 0000: a0 00 03 ... < ACL data: handle 40 flags 0x02 dlen 8 L2CAP(d): cid 0x0046 len 4 [psm 3] RFCOMM(s): DISC: cr 1 dlci 18 pf 1 ilen 0 fcs 0xd3 < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > ACL data: handle 40 flags 0x02 dlen 8 L2CAP(d): cid 0x0040 len 4 [psm 3] RFCOMM(s): DISC: cr 0 dlci 18 pf 1 ilen 0 fcs 0xb2 < ACL data: handle 40 flags 0x02 dlen 8 L2CAP(d): cid 0x0046 len 4 [psm 3] RFCOMM(s): UA: cr 0 dlci 18 pf 1 ilen 0 fcs 0x98 < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... < ACL data: handle 40 flags 0x02 dlen 8 L2CAP(d): cid 0x0046 len 4 [psm 3] RFCOMM(s): DISC: cr 1 dlci 0 pf 1 ilen 0 fcs 0xfd < ACL data: handle 40 flags 0x02 dlen 12 L2CAP(s): Disconn req: dcid 0x0046 scid 0x0040 > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 02 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 0000: 01 28 00 01 00 .(... > ACL data: handle 40 flags 0x02 dlen 8 L2CAP(d): cid 0x0040 len 4 [psm 3] RFCOMM(s): DM: cr 1 dlci 18 pf 1 ilen 0 fcs 0x18 > ACL data: handle 40 flags 0x02 dlen 8 L2CAP(d): cid 0x0040 len 4 [psm 3] RFCOMM(s): UA: cr 1 dlci 0 pf 1 ilen 0 fcs 0xd7 > ACL data: handle 40 flags 0x02 dlen 12 L2CAP(s): Disconn rsp: dcid 0x0046 scid 0x0040 < HCI Command: Disconnect (0x01|0x0006) plen 3 0000: 28 00 13 (.. > HCI Event: Command Status (0x0f) plen 4 0000: 00 01 06 04 .... > HCI Event: Disconn Complete (0x05) plen 4 0000: 00 28 00 16 .(.. [-- Attachment #3: Type: text/plain, Size: 373 bytes --] ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 [-- Attachment #4: Type: text/plain, Size: 164 bytes --] _______________________________________________ Bluez-devel mailing list Bluez-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bluez-devel ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [Bluez-devel] Host Controller to Host Flow Control 2006-08-21 11:28 ` Mayank BATRA @ 2006-08-21 13:34 ` Marcel Holtmann 2006-08-21 11:56 ` Mayank BATRA 0 siblings, 1 reply; 41+ messages in thread From: Marcel Holtmann @ 2006-08-21 13:34 UTC (permalink / raw) To: BlueZ development Hi Mayank, > > you need to use the raw queue for sending this command. You can't use > > the normal sent queue. We do the same for vendor specific commands. > > I am now using the raw queue for sending this command. Can you have a look > at the attached hcidump log to see if the behaviour is what we need? please use "hcidump -X -V" and if the HCI shows a wrong behavior with any of the new commands, please fix it. Regards Marcel ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Bluez-devel mailing list Bluez-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bluez-devel ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [Bluez-devel] Host Controller to Host Flow Control 2006-08-21 13:34 ` Marcel Holtmann @ 2006-08-21 11:56 ` Mayank BATRA 2006-08-21 14:50 ` Marcel Holtmann 2006-08-21 21:10 ` Ulisses Furquim 0 siblings, 2 replies; 41+ messages in thread From: Mayank BATRA @ 2006-08-21 11:56 UTC (permalink / raw) To: 'BlueZ development' [-- Attachment #1: Type: text/plain, Size: 505 bytes --] Hi Marcel, > please use "hcidump -X -V" Here is the log with hcidump -X -V > and if the HCI shows a wrong behavior with > any of the new commands, please fix it. There is no wrong behaviour as such. Just that Host Number of completed packets is being sent as soon as we get ACL Data on any connection handle. Do you think that the attached patch is decent enough for sending Host Number of completed packets to the raw queue? (or is there a better way than this?) Regards, Mayank [-- Attachment #2: controller_to_host --] [-- Type: application/octet-stream, Size: 68327 bytes --] HCI sniffer - Bluetooth packet analyzer ver 1.31 device: hci0 snap_len: 1028 filter: 0xffffffff < HCI Command: Read Local Supported Features (0x04|0x0003) plen 0 > HCI Event: Command Status (0x0f) plen 4 Unknown (0x00|0x0000) status 0x00 ncmd 1 < HCI Command: Read Buffer Size (0x04|0x0005) plen 0 > HCI Event: Command Complete (0x0e) plen 12 Read Local Supported Features (0x04|0x0003) ncmd 1 status 0x00 Features: 0xff 0xff 0x0d 0x00 0x00 0x00 0x00 0x00 < HCI Command: Host Buffer Size (0x03|0x0033) plen 7 0000: 00 04 ff 08 00 08 00 ....... > HCI Event: Command Complete (0x0e) plen 11 Read Buffer Size (0x04|0x0005) ncmd 1 status 0x00 ACL MTU 192:8 SCO MTU 64:8 < HCI Command: Read BD ADDR (0x04|0x0009) plen 0 > HCI Event: Command Complete (0x0e) plen 4 Host Buffer Size (0x03|0x0033) ncmd 1 0000: 00 . < HCI Command: Set Event Filter (0x03|0x0005) plen 1 type 0 condition 0 Clear all filters > HCI Event: Command Complete (0x0e) plen 10 Read BD ADDR (0x04|0x0009) ncmd 1 status 0x00 bdaddr 00:60:63:35:6D:5C < HCI Command: Write Page Timeout (0x03|0x0018) plen 2 timeout 32768 > HCI Event: Command Complete (0x0e) plen 4 Set Event Filter (0x03|0x0005) ncmd 1 status 0x00 < HCI Command: Write Connection Accept Timeout (0x03|0x0016) plen 2 timeout 32000 > HCI Event: Command Complete (0x0e) plen 4 Write Page Timeout (0x03|0x0018) ncmd 1 status 0x00 < HCI Command: Set Host Controller To Host Flow Control (0x03|0x0031) plen 1 0000: 01 . > HCI Event: Command Complete (0x0e) plen 4 Write Connection Accept Timeout (0x03|0x0016) ncmd 1 status 0x00 < HCI Command: Write Scan Enable (0x03|0x001a) plen 1 enable 3 > HCI Event: Command Complete (0x0e) plen 4 Set Host Controller To Host Flow Control (0x03|0x0031) ncmd 1 0000: 00 . > HCI Event: Command Complete (0x0e) plen 4 Write Scan Enable (0x03|0x001a) ncmd 1 status 0x00 < HCI Command: Write Scan Enable (0x03|0x001a) plen 1 enable 3 > HCI Event: Command Complete (0x0e) plen 4 Write Scan Enable (0x03|0x001a) ncmd 1 status 0x00 < HCI Command: Read Stored Link Key (0x03|0x000d) plen 7 bdaddr 00:00:00:00:00:00 all 1 > HCI Event: Command Complete (0x0e) plen 8 Read Stored Link Key (0x03|0x000d) ncmd 1 status 0x00 max 16 num 0 < HCI Command: Read Scan Enable (0x03|0x0019) plen 0 > HCI Event: Command Complete (0x0e) plen 5 Read Scan Enable (0x03|0x0019) ncmd 1 status 0x00 enable 3 < HCI Command: Write Authentication Enable (0x03|0x0020) plen 1 enable 0 > HCI Event: Command Complete (0x0e) plen 4 Write Authentication Enable (0x03|0x0020) ncmd 1 status 0x00 < HCI Command: Read Scan Enable (0x03|0x0019) plen 0 > HCI Event: Command Complete (0x0e) plen 5 Read Scan Enable (0x03|0x0019) ncmd 1 status 0x00 enable 3 < HCI Command: Write Authentication Enable (0x03|0x0020) plen 1 enable 0 > HCI Event: Command Complete (0x0e) plen 4 Write Authentication Enable (0x03|0x0020) ncmd 1 status 0x00 < HCI Command: Write Encryption Mode (0x03|0x0022) plen 1 mode 0 > HCI Event: Command Complete (0x0e) plen 4 Write Encryption Mode (0x03|0x0022) ncmd 1 status 0x00 < HCI Command: Write Local Name (0x03|0x0013) plen 248 name 'BlueZ (0)' > HCI Event: Command Complete (0x0e) plen 4 Write Local Name (0x03|0x0013) ncmd 1 status 0x00 < HCI Command: Write Class of Device (0x03|0x0024) plen 3 class 0x3e0100 > HCI Event: Command Complete (0x0e) plen 4 Write Class of Device (0x03|0x0024) ncmd 1 status 0x00 < HCI Command: Read Local Name (0x03|0x0014) plen 0 > HCI Event: Command Complete (0x0e) plen 252 Read Local Name (0x03|0x0014) ncmd 1 status 0x00 name 'BlueZ (0)' < HCI Command: Create Connection (0x01|0x0005) plen 13 bdaddr 00:13:E0:0D:03:99 ptype 0xcc18 rswitch 0x01 clkoffset 0x0000 Packet type: DM1 DM3 DM5 DH1 DH3 DH5 > HCI Event: Command Status (0x0f) plen 4 Create Connection (0x01|0x0005) status 0x00 ncmd 1 > HCI Event: Connect Complete (0x03) plen 11 status 0x00 handle 40 bdaddr 00:13:E0:0D:03:99 type ACL encrypt 0x00 < ACL data: handle 40 flags 0x02 dlen 12 L2CAP(s): Connect req: psm 3 scid 0x0040 < HCI Command: Write Link Policy Settings (0x02|0x000d) plen 4 handle 40 policy 0x0f Link policy: RSWITCH HOLD SNIFF PARK > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Command Complete (0x0e) plen 6 Write Link Policy Settings (0x02|0x000d) ncmd 1 status 0x00 handle 40 > HCI Event: Max Slots Change (0x1b) plen 3 handle 40 slots 5 > HCI Event: QoS Setup Complete (0x0d) plen 21 status 0x00 handle 40 flags 0 Service type: 1 Token rate: 0 Peak bandwith: 0 Latency: 0 Delay variation: 0 > ACL data: handle 40 flags 0x02 dlen 16 L2CAP(s): Connect rsp: dcid 0x0047 scid 0x0040 result 0 status 0 Connection successful < ACL data: handle 40 flags 0x02 dlen 16 L2CAP(s): Config req: dcid 0x0047 flags 0x00 clen 4 MTU 1024 < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > ACL data: handle 40 flags 0x02 dlen 12 L2CAP(s): Config req: dcid 0x0040 flags 0x00 clen 0 < ACL data: handle 40 flags 0x02 dlen 14 L2CAP(s): Config rsp: scid 0x0047 flags 0x00 result 0 clen 0 Success < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > ACL data: handle 40 flags 0x02 dlen 16 > ACL data: handle 40 flags 0x01 dlen 2 L2CAP(s): Config rsp: scid 0x0040 flags 0x00 result 0 clen 4 Success MTU 672 < ACL data: handle 40 flags 0x02 dlen 8 L2CAP(d): cid 0x0047 len 4 [psm 3] RFCOMM(s): SABM: cr 1 dlci 0 pf 1 ilen 0 fcs 0x1c < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > ACL data: handle 40 flags 0x02 dlen 8 L2CAP(d): cid 0x0040 len 4 [psm 3] RFCOMM(s): UA: cr 1 dlci 0 pf 1 ilen 0 fcs 0xd7 < ACL data: handle 40 flags 0x02 dlen 18 L2CAP(d): cid 0x0047 len 14 [psm 3] RFCOMM(s): PN CMD: cr 1 dlci 0 pf 0 ilen 10 fcs 0x70 mcc_len 8 dlci 18 frame_type 0 credit_flow 15 pri 0 ack_timer 0 frame_size 667 max_retrans 0 credits 7 < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > ACL data: handle 40 flags 0x02 dlen 16 > ACL data: handle 40 flags 0x01 dlen 2 L2CAP(d): cid 0x0040 len 14 [psm 3] RFCOMM(s): PN RSP: cr 0 dlci 0 pf 0 ilen 10 fcs 0xaa mcc_len 8 dlci 18 frame_type 0 credit_flow 14 pri 0 ack_timer 0 frame_size 667 max_retrans 0 credits 3 < ACL data: handle 40 flags 0x02 dlen 8 L2CAP(d): cid 0x0047 len 4 [psm 3] RFCOMM(s): SABM: cr 1 dlci 18 pf 1 ilen 0 fcs 0x32 < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > ACL data: handle 40 flags 0x02 dlen 8 L2CAP(d): cid 0x0040 len 4 [psm 3] RFCOMM(s): UA: cr 1 dlci 18 pf 1 ilen 0 fcs 0xf9 < ACL data: handle 40 flags 0x02 dlen 12 L2CAP(d): cid 0x0047 len 8 [psm 3] RFCOMM(s): MSC CMD: cr 1 dlci 0 pf 0 ilen 4 fcs 0x70 mcc_len 2 dlci 18 fc 0 rtc 1 rtr 1 ic 0 dv 1 b1 1 b2 1 b3 0 len 0 < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... < ACL data: handle 40 flags 0x02 dlen 9 L2CAP(d): cid 0x0047 len 5 [psm 3] RFCOMM(d): UIH: cr 1 dlci 18 pf 1 ilen 0 fcs 0xd2 credits 33 < ACL data: handle 40 flags 0x02 dlen 15 L2CAP(d): cid 0x0047 len 11 [psm 3] RFCOMM(d): UIH: cr 1 dlci 18 pf 0 ilen 7 fcs 0xce 0000: 80 00 07 10 00 04 00 ....... > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 2 > ACL data: handle 40 flags 0x02 dlen 12 L2CAP(d): cid 0x0040 len 8 [psm 3] RFCOMM(s): MSC CMD: cr 0 dlci 0 pf 0 ilen 4 fcs 0xaa mcc_len 2 dlci 18 fc 0 rtc 1 rtr 1 ic 0 dv 1 b1 1 b2 1 b3 0 len 0 < ACL data: handle 40 flags 0x02 dlen 12 L2CAP(d): cid 0x0047 len 8 [psm 3] RFCOMM(s): MSC RSP: cr 1 dlci 0 pf 0 ilen 4 fcs 0x70 mcc_len 2 dlci 18 fc 0 rtc 1 rtr 1 ic 0 dv 1 b1 1 b2 1 b3 0 len 0 < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > ACL data: handle 40 flags 0x02 dlen 12 L2CAP(d): cid 0x0040 len 8 [psm 3] RFCOMM(s): MSC RSP: cr 0 dlci 0 pf 0 ilen 4 fcs 0xaa mcc_len 2 dlci 18 fc 0 rtc 1 rtr 1 ic 0 dv 1 b1 1 b2 1 b3 0 len 0 > ACL data: handle 40 flags 0x02 dlen 9 L2CAP(d): cid 0x0040 len 5 [psm 3] RFCOMM(d): UIH: cr 0 dlci 18 pf 1 ilen 0 fcs 0x8 credits 4 > ACL data: handle 40 flags 0x02 dlen 16 L2CAP(d): cid 0x0040 len 12 [psm 3] RFCOMM(d): UIH: cr 0 dlci 18 pf 1 ilen 7 fcs 0x8 credits 1 0000: a0 00 07 10 00 0f a0 ....... < ACL data: handle 40 flags 0x02 dlen 192 < ACL data: handle 40 flags 0x01 dlen 192 < ACL data: handle 40 flags 0x01 dlen 192 < ACL data: handle 40 flags 0x01 dlen 100 L2CAP(d): cid 0x0047 len 672 [psm 3] RFCOMM(d): UIH: cr 1 dlci 18 pf 0 ilen 667 fcs 0xce 0000: 02 04 00 01 00 19 00 6f 00 62 00 65 00 78 00 73 .......o.b.e.x.s 0010: 00 65 00 72 00 76 00 65 00 72 00 00 c3 00 01 1d .e.r.v.e.r...... 0020: 72 48 03 df 7f 45 4c 46 01 01 01 61 00 00 00 00 rH...ELF...a.... 0030: 00 00 00 00 02 00 28 00 01 00 00 00 18 89 00 00 ......(......... 0040: 34 00 00 00 b4 f7 00 00 02 00 00 00 34 00 20 00 4...........4. . 0050: 06 00 28 00 1d 00 1a 00 06 00 00 00 34 00 00 00 ..(.........4... 0060: 34 80 00 00 34 80 00 00 c0 00 00 00 c0 00 00 00 4...4........... 0070: 05 00 00 00 04 00 00 00 03 00 00 00 f4 00 00 00 ................ 0080: f4 80 00 00 f4 80 00 00 13 00 00 00 13 00 00 00 ................ 0090: 04 00 00 00 01 00 00 00 01 00 00 00 00 00 00 00 ................ 00a0: 00 80 00 00 00 80 00 00 8c 52 00 00 8c 52 00 00 .........R...R.. 00b0: 05 00 00 00 00 80 00 00 01 00 00 00 8c 52 00 00 .............R.. 00c0: 8c 52 01 00 8c 52 01 00 5c 01 00 00 68 01 00 00 .R...R..\...h... 00d0: 06 00 00 00 00 80 00 00 02 00 00 00 48 53 00 00 ............HS.. 00e0: 48 53 01 00 48 53 01 00 a0 00 00 00 a0 00 00 00 HS..HS.......... 00f0: 06 00 00 00 04 00 00 00 04 00 00 00 10 01 00 00 ................ 0100: 10 81 00 00 10 81 00 00 20 00 00 00 20 00 00 00 ........ ... ... 0110: 04 00 00 00 10 00 00 00 2f 6c 69 62 2f 6c 64 2d ......../lib/ld- 0120: 6c 69 6e 75 78 2e 73 6f 2e 32 00 00 00 00 00 00 linux.so.2...... 0130: 00 00 00 00 04 00 00 00 10 00 00 00 01 00 00 00 ................ 0140: 47 4e 55 00 00 00 00 00 02 00 00 00 00 00 00 00 GNU............. 0150: 00 00 00 00 11 00 00 00 24 00 00 00 00 00 00 00 ........$....... 0160: 00 00 00 00 20 00 00 00 18 00 00 00 12 00 00 00 .... ........... 0170: 00 00 00 00 1d 00 00 00 21 00 00 00 1c 00 00 00 ........!....... 0180: 05 00 00 00 1f 00 00 00 00 00 00 00 23 00 00 00 ............#... 0190: 1e 00 00 00 16 00 00 00 22 00 00 00 00 00 00 00 ........"....... 01a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 01b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 01c0: 02 00 00 00 07 00 00 00 00 00 00 00 03 00 00 00 ................ 01d0: 09 00 00 00 0b 00 00 00 01 00 00 00 0d 00 00 00 ................ 01e0: 00 00 00 00 08 00 00 00 10 00 00 00 0a 00 00 00 ................ 01f0: 00 00 00 00 0f 00 00 00 06 00 00 00 0c 00 00 00 ................ 0200: 04 00 00 00 15 00 00 00 00 00 00 00 11 00 00 00 ................ 0210: 17 00 00 00 14 00 00 00 1b 00 00 00 19 00 00 00 ................ 0220: 0e 00 00 00 13 00 00 00 00 00 00 00 1a 00 00 00 ................ 0230: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 0240: b1 00 00 00 18 87 00 00 b4 00 00 00 12 00 00 00 ................ 0250: 0f 01 00 00 28 87 00 00 e8 00 00 00 12 00 00 00 ....(........... 0260: 70 00 00 00 38 87 00 00 10 00 00 00 12 00 00 00 p...8........... 0270: 16 01 00 00 48 87 00 00 10 00 00 00 12 00 00 00 ....H........... 0280: 3f 00 00 00 58 87 00 00 dc 00 00 00 12 00 00 00 ?...X........... 0290: 76 00 00 00 68 87 00 00 20 00 00 v...h... .. < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... < ACL data: handle 40 flags 0x02 dlen 192 < ACL data: handle 40 flags 0x01 dlen 174 L2CAP(d): cid 0x0047 len 362 [psm 3] RFCOMM(d): UIH: cr 1 dlci 18 pf 0 ilen 357 fcs 0xce 0000: 00 12 00 00 00 8e 00 00 00 78 87 00 00 ec 00 00 .........x...... 0010: 00 12 00 00 00 54 00 00 00 88 87 00 00 1c 00 00 .....T.......... 0020: 00 12 00 00 00 61 00 00 00 98 87 00 00 24 00 00 .....a.......$.. 0030: 00 12 00 00 00 aa 00 00 00 a8 87 00 00 24 00 00 .............$.. 0040: 00 12 00 00 00 46 00 00 00 b8 87 00 00 88 02 00 .....F.......... 0050: 00 12 00 00 00 30 00 00 00 c8 87 00 00 3c 01 00 .....0.......<.. 0060: 00 12 00 00 00 cf 00 00 00 d8 87 00 00 24 00 00 .............$.. 0070: 00 12 00 00 00 c8 00 00 00 e8 53 01 00 04 00 00 ..........S..... 0080: 00 11 00 16 00 5b 00 00 00 e8 87 00 00 ec 01 00 .....[.......... 0090: 00 12 00 00 00 da 00 00 00 f8 87 00 00 80 03 00 ................ 00a0: 00 12 00 00 00 83 00 00 00 08 88 00 00 24 00 00 .............$.. 00b0: 00 12 00 00 00 03 01 00 00 18 88 00 00 60 00 00 .............`.. 00c0: 00 12 00 00 00 f1 00 00 00 28 88 00 00 08 01 00 .........(...... 00d0: 00 12 00 00 00 a2 00 00 00 38 88 00 00 ac 02 00 .........8...... 00e0: 00 12 00 00 00 21 00 00 00 48 88 00 00 40 00 00 .....!...H...@.. 00f0: 00 12 00 00 00 7e 00 00 00 58 88 00 00 24 00 00 .....~...X...$.. 0100: 00 12 00 00 00 38 00 00 00 68 88 00 00 a4 00 00 .....8...h...... 0110: 00 12 00 00 00 68 00 00 00 78 88 00 00 4c 00 00 .....h...x...L.. 0120: 00 12 00 00 00 0a 01 00 00 88 88 00 00 10 00 00 ................ 0130: 00 12 00 00 00 1c 01 00 00 98 88 00 00 0c 01 00 ................ 0140: 00 12 00 00 00 b9 00 00 00 a8 88 00 00 9c 00 00 ................ 0150: 00 12 00 00 00 28 00 00 00 b8 88 00 00 24 00 00 .....(.......$.. 0160: 00 12 00 00 00 ..... > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > ACL data: handle 40 flags 0x02 dlen 12 L2CAP(d): cid 0x0040 len 8 [psm 3] RFCOMM(d): UIH: cr 0 dlci 18 pf 1 ilen 3 fcs 0x8 credits 2 0000: 90 00 03 ... < ACL data: handle 40 flags 0x02 dlen 192 < ACL data: handle 40 flags 0x01 dlen 192 < ACL data: handle 40 flags 0x01 dlen 192 < ACL data: handle 40 flags 0x01 dlen 100 L2CAP(d): cid 0x0047 len 672 [psm 3] RFCOMM(d): UIH: cr 1 dlci 18 pf 0 ilen 667 fcs 0xce 0000: 02 04 00 48 03 fd 9a 00 00 00 c8 88 00 00 d8 00 ...H............ 0010: 00 00 12 00 00 00 e2 00 00 00 14 cf 00 00 04 00 ................ 0020: 00 00 11 00 0f 00 c0 00 00 00 d8 88 00 00 20 00 .............. . 0030: 00 00 12 00 00 00 4d 00 00 00 e8 88 00 00 24 00 ......M.......$. 0040: 00 00 12 00 00 00 95 00 00 00 f8 88 00 00 10 00 ................ 0050: 00 00 12 00 00 00 01 00 00 00 00 00 00 00 00 00 ................ 0060: 00 00 20 00 00 00 1a 00 00 00 08 89 00 00 28 00 .. ...........(. 0070: 00 00 12 00 00 00 00 5f 5f 67 6d 6f 6e 5f 73 74 .......__gmon_st 0080: 61 72 74 5f 5f 00 6c 69 62 63 2e 73 6f 2e 36 00 art__.libc.so.6. 0090: 73 74 72 63 70 79 00 70 72 69 6e 74 66 00 63 6f strcpy.printf.co 00a0: 6e 6e 65 63 74 00 6d 65 6d 6d 6f 76 65 00 6d 65 nnect.memmove.me 00b0: 6d 63 70 79 00 70 65 72 72 6f 72 00 6d 61 6c 6c mcpy.perror.mall 00c0: 6f 63 00 73 6f 63 6b 65 74 00 73 65 6c 65 63 74 oc.socket.select 00d0: 00 61 62 6f 72 74 00 61 63 63 65 70 74 00 73 74 .abort.accept.st 00e0: 72 72 63 68 72 00 77 72 69 74 65 00 66 70 72 69 rrchr.write.fpri 00f0: 6e 74 66 00 62 69 6e 64 00 73 65 74 73 6f 63 6b ntf.bind.setsock 0100: 6f 70 74 00 73 69 67 6e 61 6c 00 72 65 61 64 00 opt.signal.read. 0110: 73 74 72 6e 63 70 79 00 72 65 61 6c 6c 6f 63 00 strncpy.realloc. 0120: 6c 69 73 74 65 6e 00 73 74 72 6e 63 61 74 00 6d listen.strncat.m 0130: 65 6d 73 65 74 00 73 70 72 69 6e 74 66 00 73 74 emset.sprintf.st 0140: 64 65 72 72 00 67 65 74 73 6f 63 6b 6f 70 74 00 derr.getsockopt. 0150: 5f 5f 78 73 74 61 74 00 5f 49 4f 5f 73 74 64 69 __xstat._IO_stdi 0160: 6e 5f 75 73 65 64 00 5f 5f 6c 69 62 63 5f 73 74 n_used.__libc_st 0170: 61 72 74 5f 6d 61 69 6e 00 73 74 72 6c 65 6e 00 art_main.strlen. 0180: 6f 70 65 6e 00 73 74 72 63 68 72 00 63 6c 6f 73 open.strchr.clos 0190: 65 00 66 72 65 65 00 47 4c 49 42 43 5f 32 2e 30 e.free.GLIBC_2.0 01a0: 00 00 00 00 02 00 02 00 02 00 02 00 02 00 02 00 ................ 01b0: 02 00 02 00 02 00 02 00 02 00 02 00 02 00 02 00 ................ 01c0: 02 00 02 00 02 00 02 00 02 00 02 00 02 00 02 00 ................ 01d0: 02 00 02 00 02 00 02 00 02 00 02 00 02 00 01 00 ................ 01e0: 02 00 02 00 02 00 00 00 02 00 01 00 01 00 10 00 ................ 01f0: 00 00 10 00 00 00 00 00 00 00 10 69 69 0d 00 00 ...........ii... 0200: 02 00 21 01 00 00 00 00 00 00 44 53 01 00 15 22 ..!.......DS..." 0210: 00 00 e8 53 01 00 14 0e 00 00 c4 52 01 00 16 01 ...S.......R.... 0220: 00 00 c8 52 01 00 16 02 00 00 cc 52 01 00 16 03 ...R.......R.... 0230: 00 00 d0 52 01 00 16 04 00 00 d4 52 01 00 16 05 ...R.......R.... 0240: 00 00 d8 52 01 00 16 06 00 00 dc 52 01 00 16 07 ...R.......R.... 0250: 00 00 e0 52 01 00 16 08 00 00 e4 52 01 00 16 09 ...R.......R.... 0260: 00 00 e8 52 01 00 16 0a 00 00 ec 52 01 00 16 0b ...R.......R.... 0270: 00 00 f0 52 01 00 16 0c 00 00 f4 52 01 00 16 0d ...R.......R.... 0280: 00 00 f8 52 01 00 16 0f 00 00 fc 52 01 00 16 10 ...R.......R.... 0290: 00 00 00 53 01 00 16 11 00 00 04 ...S....... < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... < ACL data: handle 40 flags 0x02 dlen 192 < ACL data: handle 40 flags 0x01 dlen 174 L2CAP(d): cid 0x0047 len 362 [psm 3] RFCOMM(d): UIH: cr 1 dlci 18 pf 0 ilen 357 fcs 0xce 0000: 53 01 00 16 12 00 00 08 53 01 00 16 13 00 00 0c S.......S....... 0010: 53 01 00 16 14 00 00 10 53 01 00 16 15 00 00 14 S.......S....... 0020: 53 01 00 16 16 00 00 18 53 01 00 16 17 00 00 1c S.......S....... 0030: 53 01 00 16 18 00 00 20 53 01 00 16 19 00 00 24 S...... S......$ 0040: 53 01 00 16 1a 00 00 28 53 01 00 16 1b 00 00 2c S......(S......, 0050: 53 01 00 16 1c 00 00 30 53 01 00 16 1d 00 00 34 S......0S......4 0060: 53 01 00 16 1f 00 00 38 53 01 00 16 20 00 00 3c S......8S... ..< 0070: 53 01 00 16 21 00 00 40 53 01 00 16 23 00 00 0d S...!..@S...#... 0080: c0 a0 e1 00 d8 2d e9 04 b0 4c e2 92 00 00 eb ec .....-...L...... 0090: 11 00 eb 00 a8 1b e9 04 e0 2d e5 10 e0 9f e5 0e .........-...... 00a0: e0 8f e0 08 f0 be e5 04 c0 9f e5 0c c0 8f e0 00 ................ 00b0: f0 9c e5 a0 cb 00 00 04 c0 9f e5 0c c0 8f e0 00 ................ 00c0: f0 9c e5 94 cb 00 00 04 c0 9f e5 0c c0 8f e0 00 ................ 00d0: f0 9c e5 88 cb 00 00 04 c0 9f e5 0c c0 8f e0 00 ................ 00e0: f0 9c e5 7c cb 00 00 04 c0 9f e5 0c c0 8f e0 00 ...|............ 00f0: f0 9c e5 70 cb 00 00 04 c0 9f e5 0c c0 8f e0 00 ...p............ 0100: f0 9c e5 64 cb 00 00 04 c0 9f e5 0c c0 8f e0 00 ...d............ 0110: f0 9c e5 58 cb 00 00 04 c0 9f e5 0c c0 8f e0 00 ...X............ 0120: f0 9c e5 4c cb 00 00 04 c0 9f e5 0c c0 8f e0 00 ...L............ 0130: f0 9c e5 40 cb 00 00 04 c0 9f e5 0c c0 8f e0 00 ...@............ 0140: f0 9c e5 34 cb 00 00 04 c0 9f e5 0c c0 8f e0 00 ...4............ 0150: f0 9c e5 28 cb 00 00 04 c0 9f e5 0c c0 8f e0 00 ...(............ 0160: f0 9c e5 1c cb ..... > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > ACL data: handle 40 flags 0x02 dlen 12 L2CAP(d): cid 0x0040 len 8 [psm 3] RFCOMM(d): UIH: cr 0 dlci 18 pf 1 ilen 3 fcs 0x8 credits 2 0000: 90 00 03 ... < ACL data: handle 40 flags 0x02 dlen 192 < ACL data: handle 40 flags 0x01 dlen 192 < ACL data: handle 40 flags 0x01 dlen 192 < ACL data: handle 40 flags 0x01 dlen 100 L2CAP(d): cid 0x0047 len 672 [psm 3] RFCOMM(d): UIH: cr 1 dlci 18 pf 0 ilen 667 fcs 0xce 0000: 02 04 00 48 03 fd 00 00 04 c0 9f e5 0c c0 8f e0 ...H............ 0010: 00 f0 9c e5 10 cb 00 00 04 c0 9f e5 0c c0 8f e0 ................ 0020: 00 f0 9c e5 04 cb 00 00 04 c0 9f e5 0c c0 8f e0 ................ 0030: 00 f0 9c e5 f8 ca 00 00 04 c0 9f e5 0c c0 8f e0 ................ 0040: 00 f0 9c e5 ec ca 00 00 04 c0 9f e5 0c c0 8f e0 ................ 0050: 00 f0 9c e5 e0 ca 00 00 04 c0 9f e5 0c c0 8f e0 ................ 0060: 00 f0 9c e5 d4 ca 00 00 04 c0 9f e5 0c c0 8f e0 ................ 0070: 00 f0 9c e5 c8 ca 00 00 04 c0 9f e5 0c c0 8f e0 ................ 0080: 00 f0 9c e5 bc ca 00 00 04 c0 9f e5 0c c0 8f e0 ................ 0090: 00 f0 9c e5 b0 ca 00 00 04 c0 9f e5 0c c0 8f e0 ................ 00a0: 00 f0 9c e5 a4 ca 00 00 04 c0 9f e5 0c c0 8f e0 ................ 00b0: 00 f0 9c e5 98 ca 00 00 04 c0 9f e5 0c c0 8f e0 ................ 00c0: 00 f0 9c e5 8c ca 00 00 04 c0 9f e5 0c c0 8f e0 ................ 00d0: 00 f0 9c e5 80 ca 00 00 04 c0 9f e5 0c c0 8f e0 ................ 00e0: 00 f0 9c e5 74 ca 00 00 04 c0 9f e5 0c c0 8f e0 ....t........... 00f0: 00 f0 9c e5 68 ca 00 00 04 c0 9f e5 0c c0 8f e0 ....h........... 0100: 00 f0 9c e5 5c ca 00 00 04 c0 9f e5 0c c0 8f e0 ....\........... 0110: 00 f0 9c e5 50 ca 00 00 04 c0 9f e5 0c c0 8f e0 ....P........... 0120: 00 f0 9c e5 44 ca 00 00 04 c0 9f e5 0c c0 8f e0 ....D........... 0130: 00 f0 9c e5 38 ca 00 00 04 c0 9f e5 0c c0 8f e0 ....8........... 0140: 00 f0 9c e5 2c ca 00 00 00 b0 a0 e3 02 00 bd e8 ....,........... 0150: 0d 20 a0 e1 01 00 2d e9 10 00 9f e5 01 00 2d e9 . ....-.......-. 0160: 0c 00 9f e5 0c 30 9f e5 ba ff ff eb a9 ff ff eb .....0.......... 0170: 00 cf 00 00 04 8a 00 00 f0 86 00 00 0d c0 a0 e1 ................ 0180: 00 dc 2d e9 20 a0 9f e5 20 30 9f e5 0a a0 8f e0 ..-. ... 0...... 0190: 03 30 9a e7 04 b0 4c e2 00 00 53 e3 00 ac 1b 09 .0....L...S..... 01a0: 0f e0 a0 e1 03 f0 a0 e1 00 ac 1b e9 54 c9 00 00 ............T... 01b0: 8c 00 00 00 0d c0 a0 e1 30 d8 2d e9 58 20 9f e5 ........0.-.X .. 01c0: 04 b0 4c e2 00 30 92 e5 02 50 a0 e1 00 00 53 e3 ..L..0...P....S. 01d0: 30 a8 1b 19 44 10 9f e5 00 30 91 e5 00 20 93 e5 0...D....0... .. 01e0: 00 00 52 e3 09 00 00 0a 01 40 a0 e1 00 30 94 e5 ..R......@...0.. 01f0: 04 30 83 e2 00 30 84 e5 0f e0 a0 e1 04 f0 13 e5 .0...0.......... 0200: 00 20 94 e5 00 30 92 e5 00 00 53 e3 f6 ff ff 1a . ...0....S..... 0210: 01 30 a0 e3 00 30 85 e5 30 a8 1b e9 94 52 01 00 .0...0..0....R.. 0220: 90 52 01 00 0d c0 a0 e1 00 d8 2d e9 04 b0 4c e2 .R........-...L. 0230: 00 a8 1b e9 0d c0 a0 e1 00 d8 2d e9 04 b0 4c e2 ..........-...L. 0240: 0c d0 4d e2 10 00 0b e5 14 10 0b e5 00 00 00 ea ..M............. 0250: 28 00 00 ea 04 00 a0 e3 88 10 9f e5 00 20 a0 e3 (............ .. 0260: 0e 02 00 eb 00 30 a0 e1 7c 20 9f e5 00 30 82 e5 .....0..| ...0.. 0270: 10 30 1b e5 01 00 53 e3 13 00 00 1a 68 30 9f e5 .0....S.....h0.. 0280: 00 00 93 e5 00 10 a0 e3 03 20 a0 e3 d3 04 00 eb ......... ...... 0290: 58 00 9f e5 77 ff ff eb 4c 30 9f X...w...L0. < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... < ACL data: handle 40 flags 0x02 dlen 192 < ACL data: handle 40 flags 0x01 dlen 174 L2CAP(d): cid 0x0047 len 362 [psm 3] RFCOMM(d): UIH: cr 1 dlci 18 pf 0 ilen 357 fcs 0xce 0000: e5 00 00 93 e5 35 0f 00 eb 48 30 9f e5 00 20 93 .....5...H0... . 0010: e5 00 00 52 e3 00 00 00 0a 04 00 00 ea 2c 30 9f ...R.........,0. 0020: e5 00 00 93 e5 01 10 a0 e3 27 03 00 eb f5 ff ff .........'...... 0030: ea 20 30 9f e5 00 20 a0 e3 00 20 83 e5 0c 30 9f . 0... ... ...0. 0040: e5 00 00 93 e5 49 02 00 eb d8 ff ff ea 1c 8d 00 .....I.......... 0050: 00 9c 52 01 00 18 cf 00 00 98 52 01 00 00 a8 1b ..R.......R..... 0060: e9 0d c0 a0 e1 f0 df 2d e9 04 b0 4c e2 00 a0 a0 .......-...L.... 0070: e3 18 d0 4d e2 3c a0 0b e5 38 00 0b e5 0a 80 a0 ...M.<...8...... 0080: e1 0a 40 a0 e1 d8 90 9f e5 29 70 4b e2 30 60 4b ..@......)pK.0`K 0090: e2 34 50 4b e2 24 00 00 ea 29 30 5b e5 48 00 53 .4PK.$...)0[.H.S 00a0: e3 03 10 a0 e1 08 00 00 0a 02 00 00 ca 01 00 53 ...............S 00b0: e3 09 00 00 0a 1a 00 00 ea c3 00 53 e3 12 00 00 ...........S.... 00c0: 0a cf 00 53 e3 12 00 00 0a 15 00 00 ea 30 30 1b ...S.........00. 00d0: e5 34 a0 1b e5 3c 30 0b e5 13 00 00 ea 34 00 1b .4...<0......4.. 00e0: e5 a0 0f 80 e0 c0 00 a0 e1 17 ff ff eb 00 40 50 ..............@P 00f0: e2 0d 00 00 0a 30 10 1b e5 04 00 a0 e1 34 20 1b .....0.......4 . 0100: e5 04 80 a0 e1 e2 03 00 eb 07 00 00 ea 54 00 9f .............T.. 0110: e5 00 00 00 ea 50 00 9f e5 30 10 1b e5 2e ff ff .....P...0...... 0120: eb 01 00 00 ea 44 00 9f e5 2b ff ff eb 00 50 8d .....D...+....P. 0130: e5 38 10 1b e5 07 20 a0 e1 00 00 99 e5 06 30 a0 .8.... .......0. 0140: e1 6f 03 00 eb 00 00 50 e3 d2 ff ff 1a 3c 30 1b .o.....P.....<0. 0150: e5 00 00 53 e3 07 00 00 1a 14 00 9f e5 1e ff ff ...S............ 0160: eb 13 00 00 ea ..... > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 2 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > ACL data: handle 40 flags 0x02 dlen 12 L2CAP(d): cid 0x0040 len 8 [psm 3] RFCOMM(d): UIH: cr 0 dlci 18 pf 1 ilen 3 fcs 0x8 credits 2 0000: 90 00 03 ... < ACL data: handle 40 flags 0x02 dlen 192 < ACL data: handle 40 flags 0x01 dlen 192 < ACL data: handle 40 flags 0x01 dlen 192 < ACL data: handle 40 flags 0x01 dlen 100 L2CAP(d): cid 0x0047 len 672 [psm 3] RFCOMM(d): UIH: cr 1 dlci 18 pf 0 ilen 667 fcs 0xce 0000: 02 04 00 48 03 fd 9c 52 01 00 34 cf 00 00 48 cf ...H...R..4...H. 0010: 00 00 5c cf 00 00 7c cf 00 00 00 00 58 e3 03 00 ..\...|.....X... 0020: 00 1a 24 00 9f e5 08 10 a0 e1 20 80 9f e5 12 ff ..$....... ..... 0030: ff eb 08 00 a0 e1 3c 10 1b e5 0a 20 a0 e1 61 01 ......<.... ..a. 0040: 00 eb 04 00 a0 e1 20 ff ff eb 01 00 00 ea 98 cf ...... ......... 0050: 00 00 c8 cf 00 00 f0 af 1b e9 0d c0 a0 e1 10 d8 ................ 0060: 2d e9 04 b0 4c e2 00 40 a0 e1 02 10 a0 e1 05 00 -...L..@........ 0070: 51 e3 01 f1 9f 97 19 00 00 ea 94 8c 00 00 a0 8c Q............... 0080: 00 00 78 8c 00 00 ac 8c 00 00 ac 8c 00 00 5c 8c ..x...........\. 0090: 00 00 64 00 9f e5 f8 fe ff eb 04 00 a0 e1 10 10 ..d............. 00a0: a0 e3 20 20 a0 e3 66 03 00 eb 10 a8 1b e9 04 00 .. ..f......... 00b0: a0 e1 10 10 a0 e3 20 20 a0 e3 61 03 00 eb 04 00 ...... ..a..... 00c0: a0 e1 8e ff ff eb 10 a8 1b e9 04 00 a0 e1 20 10 .............. . 00d0: a0 e3 f2 ff ff ea 04 00 a0 e1 20 10 a0 e3 ef ff .......... ..... 00e0: ff ea 18 00 9f e5 e4 fe ff eb 04 00 a0 e1 51 10 ..............Q. 00f0: a0 e3 01 20 a0 e1 52 03 00 eb 10 a8 1b e9 e0 cf ... ..R......... 0100: 00 00 fc cf 00 00 0d c0 a0 e1 00 d8 2d e9 04 b0 ............-... 0110: 4c e2 01 00 51 e3 04 30 9f 05 00 10 83 05 00 a8 L...Q..0........ 0120: 1b e9 98 52 01 00 0d c0 a0 e1 00 d8 2d e9 14 30 ...R........-..0 0130: 9f e5 00 20 83 e5 04 b0 4c e2 0c 20 9f e5 01 30 ... ....L.. ...0 0140: a0 e3 00 30 82 e5 00 a8 1b e9 a0 52 01 00 98 52 ...0.......R...R 0150: 01 00 0d c0 a0 e1 70 d8 2d e9 04 b0 4c e2 01 40 ......p.-...L..@ 0160: a0 e1 02 60 a0 e1 03 10 a0 e1 04 50 9b e5 04 00 ...`.......P.... 0170: 51 e3 01 f1 9f 97 2c 00 00 ea 58 8d 00 00 98 8d Q.....,...X..... 0180: 00 00 d0 8d 00 00 64 8d 00 00 e0 8d 00 00 a4 00 ......d......... 0190: 9f e5 b9 fe ff eb 70 a8 1b e9 9c 00 9f e5 b6 fe ......p......... 01a0: ff eb 00 00 56 e3 04 00 00 1a 04 00 a0 e1 08 20 ....V.......... 01b0: 9b e5 05 10 a0 e1 da ff ff eb 70 a8 1b e9 04 00 ..........p..... 01c0: a0 e1 05 10 a0 e1 ce ff ff eb 70 a8 1b e9 02 00 ..........p..... 01d0: 55 e3 06 00 00 ca 00 00 55 e3 04 00 00 ba 04 00 U.......U....... 01e0: a0 e1 10 10 a0 e3 20 20 a0 e3 15 03 00 eb 70 a8 ...... ......p. 01f0: 1b e9 04 00 a0 e1 51 10 a0 e3 01 20 a0 e1 10 03 ......Q.... .... 0200: 00 eb 70 a8 1b e9 04 00 a0 e1 05 20 a0 e1 91 ff ..p........ .... 0210: ff eb 70 a8 1b e9 24 00 9f e5 97 fe ff eb 20 20 ..p...$....... 0220: 9f e5 01 30 a0 e3 00 30 82 e5 70 a8 1b e9 14 00 ...0...0..p..... 0230: 9f e5 91 fe ff eb 70 a8 1b e9 24 d0 00 00 28 d0 ......p...$...(. 0240: 00 00 2c d0 00 00 98 52 01 00 60 d0 00 00 0d c0 ..,....R..`..... 0250: a0 e1 30 d8 2d e9 40 20 9f e5 00 30 92 e5 04 b0 ..0.-.@ ...0.... 0260: 4c e2 00 00 53 e3 09 00 00 1a 02 50 a0 e1 2c 40 L...S......P..,@ 0270: 9f e5 00 00 94 e5 0a 10 a0 e3 3b 02 00 eb 00 00 ..........;..... 0280: 50 e3 30 a8 1b b9 00 30 95 e5 00 00 53 e3 f7 ff P.0....0....S... 0290: ff 0a 0c 30 9f e5 00 00 93 e5 30 ...0......0 < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... < ACL data: handle 40 flags 0x02 dlen 192 < ACL data: handle 40 flags 0x01 dlen 174 L2CAP(d): cid 0x0047 len 362 [psm 3] RFCOMM(d): UIH: cr 1 dlci 18 pf 0 ilen 357 fcs 0xce 0000: a8 1b e9 98 52 01 00 9c 52 01 00 a0 52 01 00 0d ....R...R...R... 0010: c0 a0 e1 00 d8 2d e9 04 b0 4c e2 6c 02 00 eb e3 .....-...L.l.... 0020: ff ff eb 08 20 9f e5 00 30 a0 e3 00 30 82 e5 00 .... ...0...0... 0030: a8 1b e9 98 52 01 00 0d c0 a0 e1 00 d8 2d e9 04 ....R........-.. 0040: b0 4c e2 00 10 a0 e1 03 00 a0 e3 64 20 4b e2 58 .L.........d K.X 0050: d0 4d e2 4e fe ff eb 38 00 1b e5 00 a8 1b e9 0d .M.N...8........ 0060: c0 a0 e1 f0 d8 2d e9 04 b0 4c e2 00 40 a0 e1 01 .....-...L..@... 0070: 70 a0 e1 ef ff ff eb 00 20 a0 e1 00 20 87 e5 64 p....... ... ..d 0080: 00 9f e5 04 10 a0 e1 55 fe ff eb 04 00 a0 e1 00 .......U........ 0090: 10 a0 e3 01 20 a0 e1 61 fe ff eb 00 60 a0 e1 01 .... ..a....`... 00a0: 00 76 e3 00 00 a0 e3 f0 a8 1b 09 00 00 97 e5 27 .v.............' 00b0: fe ff eb 00 50 50 e2 09 00 00 0a 06 00 a0 e1 00 ....PP.......... 00c0: 20 97 e5 05 10 a0 e1 71 fe ff eb 00 40 a0 e1 06 ......q....@... 00d0: 00 a0 e1 02 fe ff eb 05 00 a0 e1 00 40 87 e5 f0 ............@... 00e0: a8 1b e9 05 00 a0 e1 f0 a8 1b e9 70 d0 00 00 0d ...........p.... 00f0: c0 a0 e1 f0 dd 2d e9 04 b0 4c e2 00 70 a0 e1 01 .....-...L..p... 0100: 60 a0 e1 06 00 a0 e1 f0 10 4b e2 d4 d0 4d e2 d2 `........K...M.. 0110: ff ff eb 00 80 50 e2 08 00 a0 01 7e 00 00 0a 06 .....P.....~.... 0120: 00 a0 e1 2e 10 a0 e3 e5 fd ff eb 00 00 50 e3 d8 .............P.. 0130: a0 9f e5 4b 00 00 0a 01 30 f0 e5 76 20 43 e2 76 ...K....0..v C.v 0140: 00 53 e3 07 00 00 1a 01 30 d0 e5 63 20 43 e2 63 .S......0..c C.c 0150: 00 53 e3 03 00 00 1a 02 30 d0 e5 66 20 43 e2 66 .S......0..f C.f 0160: 00 53 e3 03 20 .S.. > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > ACL data: handle 40 flags 0x02 dlen 12 L2CAP(d): cid 0x0040 len 8 [psm 3] RFCOMM(d): UIH: cr 0 dlci 18 pf 1 ilen 3 fcs 0x8 credits 2 0000: 90 00 03 ... < ACL data: handle 40 flags 0x02 dlen 192 < ACL data: handle 40 flags 0x01 dlen 192 < ACL data: handle 40 flags 0x01 dlen 192 < ACL data: handle 40 flags 0x01 dlen 100 L2CAP(d): cid 0x0047 len 672 [psm 3] RFCOMM(d): UIH: cr 1 dlci 18 pf 0 ilen 667 fcs 0xce 0000: 02 04 00 48 03 fd d0 05 00 00 52 e3 03 00 00 1a ...H......R..... 0010: 9c 00 9f e5 9c a0 9f e5 19 fe ff eb 39 00 00 ea ............9... 0020: 00 30 d0 e5 76 20 43 e2 76 00 53 e3 03 10 a0 e1 .0..v C.v.S..... 0030: 07 00 00 1a 01 30 d0 e5 63 20 43 e2 63 00 53 e3 .....0..c C.c.S. 0040: 03 00 00 1a 02 30 d0 e5 73 20 43 e2 73 00 53 e3 .....0..s C.s.S. 0050: 03 20 d0 05 00 00 52 e3 03 00 00 1a 58 00 9f e5 . ....R.....X... 0060: 58 a0 9f e5 06 fe ff eb 26 00 00 ea 74 20 41 e2 X.......&...t A. 0070: 74 00 51 e3 07 00 00 1a 01 30 d0 e5 78 20 43 e2 t.Q......0..x C. 0080: 78 00 53 e3 03 00 00 1a 02 30 d0 e5 74 20 43 e2 x.S......0..t C. 0090: 74 00 53 e3 03 20 d0 05 00 00 52 e3 09 00 00 1a t.S.. ....R..... 00a0: 1c 00 9f e5 04 a0 9f e5 f5 fd ff eb 15 00 00 ea ................ 00b0: 6f 6d 65 6d 88 d0 00 00 72 64 64 61 ac d0 00 00 omem....rdda.... 00c0: 65 74 61 64 cc d0 00 00 70 20 41 e2 70 00 51 e3 etad....p A.p.Q. 00d0: 07 00 00 1a 01 30 d0 e5 72 20 43 e2 72 00 53 e3 .....0..r C.r.S. 00e0: 03 00 00 1a 02 30 d0 e5 63 20 43 e2 63 00 53 e3 .....0..c C.c.S. 00f0: 03 20 d0 05 00 00 52 e3 02 00 00 1a bc 00 9f e5 . ....R......... 0100: bc a0 9f e5 de fd ff eb 07 00 a0 e1 02 10 a0 e3 ................ 0110: f4 01 00 eb 00 50 a0 e1 ec 40 4b e2 04 00 a0 e1 .....P...@K..... 0120: 06 10 a0 e1 c8 20 a0 e3 b0 02 00 eb 00 00 8d e5 ..... .......... 0130: 00 60 a0 e3 04 60 8d e5 07 00 a0 e1 05 10 a0 e1 .`...`.......... 0140: 01 20 a0 e3 04 30 a0 e1 08 02 00 eb 04 40 a0 e3 . ...0.......@.. 0150: 50 00 8d e8 07 00 a0 e1 05 10 a0 e1 f0 30 1b e5 P............0.. 0160: c3 20 a0 e3 01 02 00 eb 58 30 9f e5 00 20 93 e5 . ......X0... .. 0170: 01 00 52 e3 05 00 00 0a 50 00 8d e8 07 00 a0 e1 ..R.....P....... 0180: 05 10 a0 e1 cf 20 a0 e3 0a 30 a0 e1 f7 01 00 eb ..... ...0...... 0190: 04 60 8d e5 f0 30 1b e5 00 30 8d e5 07 00 a0 e1 .`...0...0...... 01a0: 05 10 a0 e1 48 20 a0 e3 08 30 a0 e1 ef 01 00 eb ....H ...0...... 01b0: 08 00 a0 e1 c6 fd ff eb 05 00 a0 e1 02 00 00 ea ................ 01c0: ec d0 00 00 68 63 6e 6c a4 52 01 00 f0 ad 1b e9 ....hcnl.R...... 01d0: 0d c0 a0 e1 f0 d9 2d e9 04 b0 4c e2 00 50 a0 e1 ......-...L..P.. 01e0: 12 4e 4b e2 04 00 a0 e1 01 80 a0 e1 00 10 a0 e3 .NK............. 01f0: 02 70 a0 e1 ff 20 a0 e3 01 dc 4d e2 b8 fd ff eb .p... ....M..... 0200: 88 00 9f e5 05 10 a0 e1 9d fd ff eb 80 10 9f e5 ................ 0210: 04 00 a0 e1 be fd ff eb 05 00 a0 e1 2f 10 a0 e3 ............/... 0220: a3 fd ff eb 00 10 50 e2 04 60 a0 e1 05 10 a0 01 ......P..`...... 0230: 01 10 81 12 06 00 a0 e1 fa 20 a0 e3 44 fd ff eb ......... ..D... 0240: 06 00 a0 e1 42 10 a0 e3 6d 2f a0 e3 02 20 82 e2 ....B...m/... .. 0250: 9b fd ff eb 00 50 50 e2 0f 00 00 ba 05 00 a0 e1 .....PP......... 0260: 08 10 a0 e1 07 20 a0 e1 41 fd ff eb 00 40 a0 e1 ..... ..A....@.. 0270: 05 00 a0 e1 42 fd ff eb 06 10 a0 e1 14 00 9f e5 ....B........... 0280: 04 20 a0 e1 7e fd ff eb 04 00 a0 e1 05 00 00 ea . ..~........... 0290: 0c d1 00 00 1c d1 00 00 24 d1 00 ........$.. < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... < ACL data: handle 40 flags 0x02 dlen 192 < ACL data: handle 40 flags 0x01 dlen 174 L2CAP(d): cid 0x0047 len 362 [psm 3] RFCOMM(d): UIH: cr 1 dlci 18 pf 0 ilen 357 fcs 0xce 0000: 00 06 00 a0 e1 3b fd ff eb 00 00 e0 e3 f0 a9 1b .....;.......... 0010: e9 0d c0 a0 e1 f0 d8 2d e9 04 b0 4c e2 00 70 a0 .......-...L..p. 0020: e1 02 50 a0 e1 00 60 51 e2 00 00 a0 e3 f0 a8 1b ..P...`Q........ 0030: 09 a4 00 80 e2 47 fd ff eb 00 40 50 e2 04 00 a0 .....G....@P.... 0040: 01 f0 a8 1b 09 04 00 a0 e1 00 10 a0 e3 a4 20 a0 .............. . 0050: e3 7c fd ff eb 30 60 84 e5 a5 30 a0 e1 01 30 03 .|...0`...0...0. 0060: e2 18 30 84 e5 25 21 a0 e1 01 20 02 e2 1c 20 84 ..0..%!... ... . 0070: e5 a5 31 a0 e1 01 30 03 e2 20 30 84 e5 00 20 e0 ..1...0.. 0... . 0080: e3 08 20 84 e5 0c 20 84 e5 10 20 84 e5 80 30 a0 .. ... ... ...0. 0090: e3 14 30 84 e5 34 70 84 e5 00 50 a0 e3 38 50 84 ..0..4p...P..8P. 00a0: e5 01 0b a0 e3 65 0d 00 eb 05 00 50 e1 28 00 84 .....e.....P.(.. 00b0: e5 13 00 00 0a 01 0b a0 e3 60 0d 00 eb 05 00 50 .........`.....P 00c0: e1 24 00 84 e5 0e 00 00 0a 01 3b a0 e3 03 20 a0 .$........;... . 00d0: e1 02 20 c4 e5 43 34 a0 e1 03 30 c4 e5 ff 20 a0 .. ..C4...0... . 00e0: e3 00 20 c4 e5 01 50 c4 e5 04 50 c4 e5 05 30 c4 .. ...P...P...0. 00f0: e5 0d 00 a0 e3 01 10 a0 e3 06 fd ff eb 04 00 a0 ................ 0100: e1 f0 a8 1b e9 24 00 94 e5 00 00 50 e3 00 00 00 .....$.....P.... 0110: 0a 7f 0d 00 eb 28 00 94 e5 00 00 50 e3 00 00 00 .....(.....P.... 0120: 0a 7b 0d 00 eb 04 00 a0 e1 42 fd ff eb 00 00 a0 .{.......B...... 0130: e3 f0 a8 1b e9 0d c0 a0 e1 00 d8 2d e9 04 b0 4c ...........-...L 0140: e2 00 c0 50 e2 00 00 e0 03 00 a8 1b 09 00 00 51 ...P...........Q 0150: e3 07 00 00 0a 01 e0 a0 e1 0f 00 be e8 88 c0 8c ................ 0160: e2 0f 00 ac e8 ..... > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 2 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > ACL data: handle 40 flags 0x02 dlen 12 L2CAP(d): cid 0x0040 len 8 [psm 3] RFCOMM(d): UIH: cr 0 dlci 18 pf 1 ilen 3 fcs 0x8 credits 2 0000: 90 00 03 ... < ACL data: handle 40 flags 0x02 dlen 192 < ACL data: handle 40 flags 0x01 dlen 192 < ACL data: handle 40 flags 0x01 dlen 192 < ACL data: handle 40 flags 0x01 dlen 100 L2CAP(d): cid 0x0047 len 672 [psm 3] RFCOMM(d): UIH: cr 1 dlci 18 pf 0 ilen 667 fcs 0xce 0000: 02 04 00 48 03 fd 03 00 9e e8 03 00 8c e8 01 00 ...H............ 0010: a0 e3 00 a8 1b e9 00 00 e0 e3 00 a8 1b e9 0d c0 ................ 0020: a0 e1 10 d8 2d e9 04 b0 4c e2 00 40 50 e2 10 a8 ....-...L..@P... 0030: 1b 09 04 00 a0 e1 9d 08 00 eb 04 00 a0 e1 e2 08 ................ 0040: 00 eb 24 00 94 e5 00 00 50 e3 00 00 00 0a 58 0d ..$.....P.....X. 0050: 00 eb 28 00 94 e5 00 00 50 e3 00 00 00 0a 54 0d ..(.....P.....T. 0060: 00 eb 04 00 a0 e1 1b fd ff eb 10 a8 1b e9 0d c0 ................ 0070: a0 e1 00 d8 2d e9 04 b0 4c e2 00 00 50 e3 a0 10 ....-...L...P... 0080: 80 15 00 a8 1b e9 0d c0 a0 e1 00 d8 2d e9 04 b0 ............-... 0090: 4c e2 00 00 50 e3 a0 00 90 15 00 a8 1b 19 00 00 L...P........... 00a0: a0 e3 00 a8 1b e9 0d c0 a0 e1 00 d8 2d e9 04 b0 ............-... 00b0: 4c e2 00 00 50 e3 00 a8 1b 09 00 00 51 e3 00 a8 L...P.......Q... 00c0: 1b 09 00 00 52 e3 30 10 80 e5 a0 20 80 15 00 a8 ....R.0.... .... 00d0: 1b e9 0d c0 a0 e1 10 d8 2d e9 04 b0 4c e2 01 18 ........-...L... 00e0: a0 e1 21 18 a0 e1 02 28 a0 e1 22 28 a0 e1 00 40 ..!....(.."(...@ 00f0: 50 e2 0d 00 e0 03 10 a8 1b 09 2c 30 94 e5 00 00 P.........,0.... 0100: 53 e3 0f 00 e0 e3 10 a8 1b 19 7f 0c a0 e3 01 00 S............... 0110: 80 e2 ff 30 41 e2 03 38 a0 e1 23 08 50 e1 01 c0 ...0A..8..#.P... 0120: a0 e1 01 00 00 2a 06 00 e0 e3 10 a8 1b e9 ff 30 .....*.........0 0130: 42 e2 03 38 a0 e1 23 08 50 e1 02 00 a0 e1 f8 ff B..8..#.P....... 0140: ff 3a 02 c0 c4 e5 41 34 a0 e1 03 30 c4 e5 04 00 .:....A4...0.... 0150: c4 e5 42 34 a0 e1 05 30 c4 e5 02 20 d4 e5 03 10 ..B4...0... .... 0160: d4 e5 28 00 94 e5 01 14 82 e1 f7 0c 00 eb 00 00 ..(............. 0170: 50 e3 28 00 84 e5 0a 00 00 0a 04 30 d4 e5 05 10 P.(........0.... 0180: d4 e5 24 00 94 e5 01 14 83 e1 ef 0c 00 eb 00 30 ..$............0 0190: a0 e1 00 00 53 e3 0b 00 e0 03 00 00 a0 13 24 30 ....S.........$0 01a0: 84 e5 10 a8 1b e9 0b 00 e0 e3 10 a8 1b e9 0d c0 ................ 01b0: a0 e1 10 d8 2d e9 04 b0 4c e2 00 40 50 e2 00 00 ....-...L..@P... 01c0: e0 03 10 a8 1b 09 00 00 51 e3 00 30 a0 13 01 30 ........Q..0...0 01d0: a0 03 00 00 52 e3 00 30 a0 03 00 00 53 e3 04 00 ....R..0....S... 01e0: 00 1a 40 00 84 e2 af fc ff eb 04 00 a0 e1 54 08 ..@...........T. 01f0: 00 eb 10 a8 1b e9 00 00 e0 e3 10 a8 1b e9 0d c0 ................ 0200: a0 e1 f0 d9 2d e9 04 b0 4c e2 01 70 a0 e1 02 80 ....-...L..p.... 0210: a0 e1 00 60 50 e2 01 00 00 1a 00 00 a0 e3 f0 a9 ...`P........... 0220: 1b e9 08 30 96 e5 00 00 53 e3 fa ff ff ba 0c 30 ...0....S......0 0230: 96 e5 00 00 53 e3 f7 ff ff ba 2c 40 96 e5 00 00 ....S.....,@.... 0240: a0 e3 00 00 54 e1 f0 a9 1b 19 a4 00 80 e2 69 fc ....T.........i. 0250: ff eb 00 50 50 e2 ef ff ff 0a 05 00 a0 e1 04 10 ...PP........... 0260: a0 e1 a4 20 a0 e3 9f fc ff eb 00 00 57 e3 30 70 ... ........W.0p 0270: 85 15 30 30 96 05 30 30 85 05 00 00 58 e3 a0 80 ..00..00....X... 0280: 85 15 a0 30 96 05 a0 30 85 05 18 30 96 e5 18 30 ...0...0...0...0 0290: 85 e5 34 00 85 e2 34 10 86 e2 54 ..4...4...T < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... **************************File Transfer in between**************************** > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > ACL data: handle 40 flags 0x02 dlen 12 L2CAP(d): cid 0x0040 len 8 [psm 3] RFCOMM(d): UIH: cr 0 dlci 18 pf 1 ilen 3 fcs 0x8 credits 2 0000: 90 00 03 ... < ACL data: handle 40 flags 0x02 dlen 192 < ACL data: handle 40 flags 0x01 dlen 192 < ACL data: handle 40 flags 0x01 dlen 192 < ACL data: handle 40 flags 0x01 dlen 100 L2CAP(d): cid 0x0047 len 672 [psm 3] RFCOMM(d): UIH: cr 1 dlci 18 pf 0 ilen 667 fcs 0xce 0000: 02 04 00 48 03 fd 73 65 74 72 73 70 00 63 6c 6f ...H..setrsp.clo 0010: 73 65 40 40 47 4c 49 42 43 5f 32 2e 30 00 70 65 se@@GLIBC_2.0.pe 0020: 72 72 6f 72 40 40 47 4c 49 42 43 5f 32 2e 30 00 rror@@GLIBC_2.0. 0030: 49 6e 4f 42 45 58 5f 53 65 72 76 65 72 52 65 67 InOBEX_ServerReg 0040: 69 73 74 65 72 00 6f 62 65 78 5f 64 65 6c 69 76 ister.obex_deliv 0050: 65 72 5f 65 76 65 6e 74 00 66 70 72 69 6e 74 66 er_event.fprintf 0060: 40 40 47 4c 49 42 43 5f 32 2e 30 00 73 69 67 6e @@GLIBC_2.0.sign 0070: 61 6c 40 40 47 4c 49 42 43 5f 32 2e 30 00 69 6e al@@GLIBC_2.0.in 0080: 73 65 72 74 5f 75 62 79 74 65 5f 68 65 61 64 65 sert_ubyte_heade 0090: 72 00 49 6e 4f 42 45 58 5f 54 72 61 6e 73 70 6f r.InOBEX_Transpo 00a0: 72 74 43 6f 6e 6e 65 63 74 00 73 65 6c 65 63 74 rtConnect.select 00b0: 40 40 47 4c 49 42 43 5f 32 2e 30 00 63 6c 69 65 @@GLIBC_2.0.clie 00c0: 6e 74 5f 64 6f 6e 65 00 6f 62 65 78 5f 64 61 74 nt_done.obex_dat 00d0: 61 5f 72 65 71 75 65 73 74 00 6f 62 65 78 5f 64 a_request.obex_d 00e0: 61 74 61 5f 69 6e 64 69 63 61 74 69 6f 6e 00 4f ata_indication.O 00f0: 42 45 58 5f 47 65 74 43 75 73 74 6f 6d 44 61 74 BEX_GetCustomDat 0100: 61 00 5f 5f 62 73 73 5f 73 74 61 72 74 5f 5f 00 a.__bss_start__. 0110: 4f 42 45 58 5f 47 65 74 52 65 73 70 6f 6e 73 65 OBEX_GetResponse 0120: 4d 65 73 73 61 67 65 00 6f 62 65 78 5f 6f 62 6a Message.obex_obj 0130: 65 63 74 5f 72 65 70 61 72 73 65 68 65 61 64 65 ect_reparseheade 0140: 72 73 00 6f 62 65 78 5f 6f 62 6a 65 63 74 5f 73 rs.obex_object_s 0150: 65 6e 64 00 67 65 74 5f 66 69 6c 65 73 69 7a 65 end.get_filesize 0160: 00 6f 62 65 78 5f 74 72 61 6e 73 70 6f 72 74 5f .obex_transport_ 0170: 64 69 73 63 6f 6e 6e 65 63 74 5f 72 65 71 75 65 disconnect_reque 0180: 73 74 00 67 5f 6e 65 74 62 75 66 5f 74 61 69 6c st.g_netbuf_tail 0190: 72 6f 6f 6d 00 6f 62 65 78 5f 6f 62 6a 65 63 74 room.obex_object 01a0: 5f 73 65 74 63 6d 64 00 61 63 63 65 70 74 40 40 _setcmd.accept@@ 01b0: 47 4c 49 42 43 5f 32 2e 30 00 6f 62 65 78 5f 73 GLIBC_2.0.obex_s 01c0: 65 72 76 65 72 00 5f 69 6e 69 74 00 67 5f 6e 65 erver._init.g_ne 01d0: 74 62 75 66 5f 66 72 65 65 00 6f 62 65 78 5f 63 tbuf_free.obex_c 01e0: 61 6e 63 65 6c 72 65 71 75 65 73 74 00 6c 69 73 ancelrequest.lis 01f0: 74 65 6e 40 40 47 4c 49 42 43 5f 32 2e 30 00 4f ten@@GLIBC_2.0.O 0200: 42 45 58 5f 43 68 61 72 54 6f 55 6e 69 63 6f 64 BEX_CharToUnicod 0210: 65 00 42 74 4f 42 45 58 5f 54 72 61 6e 73 70 6f e.BtOBEX_Transpo 0220: 72 74 43 6f 6e 6e 65 63 74 00 69 6e 6f 62 65 78 rtConnect.inobex 0230: 5f 70 72 65 70 61 72 65 5f 63 6f 6e 6e 65 63 74 _prepare_connect 0240: 00 4f 42 45 58 5f 4f 62 6a 65 63 74 52 65 50 61 .OBEX_ObjectRePa 0250: 72 73 65 48 65 61 64 65 72 73 00 6d 61 6c 6c 6f rseHeaders.mallo 0260: 63 40 40 47 4c 49 42 43 5f 32 2e 30 00 69 72 6f c@@GLIBC_2.0.iro 0270: 62 65 78 5f 70 72 65 70 61 72 65 5f 6c 69 73 74 bex_prepare_list 0280: 65 6e 00 67 5f 6e 65 74 62 75 66 5f 70 75 73 68 en.g_netbuf_push 0290: 00 69 72 6f 62 65 78 5f 61 63 63 .irobex_acc < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... < ACL data: handle 40 flags 0x02 dlen 192 < ACL data: handle 40 flags 0x01 dlen 174 L2CAP(d): cid 0x0047 len 362 [psm 3] RFCOMM(d): UIH: cr 1 dlci 18 pf 0 ilen 357 fcs 0xce 0000: 65 70 74 00 62 74 6f 62 65 78 5f 63 6f 6e 6e 65 ept.btobex_conne 0010: 63 74 5f 72 65 71 75 65 73 74 00 6d 65 6d 6d 6f ct_request.memmo 0020: 76 65 40 40 47 4c 49 42 43 5f 32 2e 30 00 6f 62 ve@@GLIBC_2.0.ob 0030: 65 78 5f 74 72 61 6e 73 70 6f 72 74 5f 72 65 61 ex_transport_rea 0040: 64 00 67 5f 6e 65 74 62 75 66 5f 70 75 6c 6c 00 d.g_netbuf_pull. 0050: 69 6e 6f 62 65 78 5f 61 63 63 65 70 74 00 67 65 inobex_accept.ge 0060: 74 73 6f 63 6b 6f 70 74 40 40 47 4c 49 42 43 5f tsockopt@@GLIBC_ 0070: 32 2e 30 00 73 74 64 65 72 72 40 40 47 4c 49 42 2.0.stderr@@GLIB 0080: 43 5f 32 2e 30 00 61 62 6f 72 74 40 40 47 4c 49 C_2.0.abort@@GLI 0090: 42 43 5f 32 2e 30 00 4f 42 45 58 5f 4f 62 6a 65 BC_2.0.OBEX_Obje 00a0: 63 74 44 65 6c 65 74 65 00 5f 5f 64 65 72 65 67 ctDelete.__dereg 00b0: 69 73 74 65 72 5f 66 72 61 6d 65 5f 69 6e 66 6f ister_frame_info 00c0: 00 5f 5f 78 73 74 61 74 40 40 47 4c 49 42 43 5f .__xstat@@GLIBC_ 00d0: 32 2e 30 00 6f 62 65 78 5f 6f 62 6a 65 63 74 5f 2.0.obex_object_ 00e0: 67 65 74 6e 65 78 74 68 65 61 64 65 72 00 73 65 getnextheader.se 00f0: 74 73 6f 63 6b 6f 70 74 40 40 47 4c 49 42 43 5f tsockopt@@GLIBC_ 0100: 32 2e 30 00 69 6e 6f 62 65 78 5f 64 69 73 63 6f 2.0.inobex_disco 0110: 6e 6e 65 63 74 5f 73 65 72 76 65 72 00 62 74 6f nnect_server.bto 0120: 62 65 78 5f 6c 69 73 74 65 6e 00 4f 42 45 58 5f bex_listen.OBEX_ 0130: 53 65 74 54 72 61 6e 73 70 6f 72 74 4d 54 55 00 SetTransportMTU. 0140: 4f 42 45 58 5f 49 6e 69 74 00 6f 62 65 78 5f 6f OBEX_Init.obex_o 0150: 62 6a 65 63 74 5f 64 65 6c 65 74 65 00 5f 5f 62 bject_delete.__b 0160: 73 73 5f 65 6e ss_en > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > ACL data: handle 40 flags 0x02 dlen 12 L2CAP(d): cid 0x0040 len 8 [psm 3] RFCOMM(d): UIH: cr 0 dlci 18 pf 1 ilen 3 fcs 0x8 credits 2 0000: 90 00 03 ... < ACL data: handle 40 flags 0x02 dlen 192 < ACL data: handle 40 flags 0x01 dlen 192 < ACL data: handle 40 flags 0x01 dlen 192 < ACL data: handle 40 flags 0x01 dlen 100 L2CAP(d): cid 0x0047 len 672 [psm 3] RFCOMM(d): UIH: cr 1 dlci 18 pf 0 ilen 667 fcs 0xce 0000: 02 04 00 48 03 fd 64 5f 5f 00 6f 62 65 78 5f 64 ...H..d__.obex_d 0010: 65 62 75 67 00 73 6c 69 73 74 5f 61 70 70 65 6e ebug.slist_appen 0020: 64 00 73 65 72 76 65 72 5f 64 6f 6e 65 00 5f 73 d.server_done._s 0030: 74 61 72 74 00 73 61 66 65 5f 73 61 76 65 5f 66 tart.safe_save_f 0040: 69 6c 65 00 67 5f 6e 65 74 62 75 66 5f 70 72 69 ile.g_netbuf_pri 0050: 6e 74 00 69 6e 6f 62 65 78 5f 63 6f 6e 6e 65 63 nt.inobex_connec 0060: 74 5f 72 65 71 75 65 73 74 00 67 5f 6e 65 74 62 t_request.g_netb 0070: 75 66 5f 70 75 74 00 68 61 6e 64 6c 65 00 6f 62 uf_put.handle.ob 0080: 65 78 5f 74 72 61 6e 73 70 6f 72 74 5f 6c 69 73 ex_transport_lis 0090: 74 65 6e 00 73 74 72 6c 65 6e 40 40 47 4c 49 42 ten.strlen@@GLIB 00a0: 43 5f 32 2e 30 00 69 6e 73 65 72 74 5f 62 79 74 C_2.0.insert_byt 00b0: 65 5f 73 74 72 65 61 6d 5f 68 65 61 64 65 72 00 e_stream_header. 00c0: 6f 62 65 78 5f 65 76 65 6e 74 00 62 74 6f 62 65 obex_event.btobe 00d0: 78 5f 70 72 65 70 61 72 65 5f 6c 69 73 74 65 6e x_prepare_listen 00e0: 00 62 74 6f 62 65 78 5f 64 69 73 63 6f 6e 6e 65 .btobex_disconne 00f0: 63 74 5f 73 65 72 76 65 72 00 4f 42 45 58 5f 53 ct_server.OBEX_S 0100: 65 74 55 73 65 72 43 61 6c 6c 42 61 63 6b 00 73 etUserCallBack.s 0110: 6c 69 73 74 5f 72 65 6d 6f 76 65 00 42 74 4f 42 list_remove.BtOB 0120: 45 58 5f 53 65 72 76 65 72 52 65 67 69 73 74 65 EX_ServerRegiste 0130: 72 00 4f 42 45 58 5f 52 65 71 75 65 73 74 00 69 r.OBEX_Request.i 0140: 6e 6f 62 65 78 5f 64 69 73 63 6f 6e 6e 65 63 74 nobex_disconnect 0150: 5f 72 65 71 75 65 73 74 00 4f 42 45 58 5f 54 72 _request.OBEX_Tr 0160: 61 6e 73 70 6f 72 74 43 6f 6e 6e 65 63 74 00 4f ansportConnect.O 0170: 42 45 58 5f 52 65 67 69 73 74 65 72 43 54 72 61 BEX_RegisterCTra 0180: 6e 73 70 6f 72 74 00 69 72 6f 62 65 78 5f 64 69 nsport.irobex_di 0190: 73 63 6f 6e 6e 65 63 74 5f 73 65 72 76 65 72 00 sconnect_server. 01a0: 46 64 4f 42 45 58 5f 54 72 61 6e 73 70 6f 72 74 FdOBEX_Transport 01b0: 53 65 74 75 70 00 5f 5f 62 73 73 5f 73 74 61 72 Setup.__bss_star 01c0: 74 00 4f 42 45 58 5f 43 61 6e 63 65 6c 52 65 71 t.OBEX_CancelReq 01d0: 75 65 73 74 00 6d 61 69 6e 00 67 5f 6e 65 74 62 uest.main.g_netb 01e0: 75 66 5f 6e 65 77 00 5f 5f 6c 69 62 63 5f 73 74 uf_new.__libc_st 01f0: 61 72 74 5f 6d 61 69 6e 40 40 47 4c 49 42 43 5f art_main@@GLIBC_ 0200: 32 2e 30 00 69 72 6f 62 65 78 5f 63 6f 6e 6e 65 2.0.irobex_conne 0210: 63 74 5f 72 65 71 75 65 73 74 00 6f 62 65 78 5f ct_request.obex_ 0220: 6f 62 6a 65 63 74 5f 61 64 64 68 65 61 64 65 72 object_addheader 0230: 00 64 6f 5f 73 79 6e 63 5f 72 65 71 75 65 73 74 .do_sync_request 0240: 00 4f 42 45 58 5f 53 65 74 55 73 65 72 44 61 74 .OBEX_SetUserDat 0250: 61 00 5f 5f 65 6e 64 5f 5f 00 72 65 61 6c 6c 6f a.__end__.reallo 0260: 63 40 40 47 4c 49 42 43 5f 32 2e 30 00 6f 62 65 c@@GLIBC_2.0.obe 0270: 78 5f 74 72 61 6e 73 70 6f 72 74 5f 68 61 6e 64 x_transport_hand 0280: 6c 65 5f 69 6e 70 75 74 00 4f 42 45 58 5f 47 65 le_input.OBEX_Ge 0290: 74 55 73 65 72 44 61 74 61 00 64 tUserData.d < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... < ACL data: handle 40 flags 0x02 dlen 192 < ACL data: handle 40 flags 0x01 dlen 174 L2CAP(d): cid 0x0047 len 362 [psm 3] RFCOMM(d): UIH: cr 1 dlci 18 pf 0 ilen 357 fcs 0xce 0000: 61 74 61 5f 73 74 61 72 74 00 67 5f 6e 65 74 62 ata_start.g_netb 0010: 75 66 5f 70 75 74 5f 64 61 74 61 00 4f 42 45 58 uf_put_data.OBEX 0020: 5f 54 72 61 6e 73 70 6f 72 74 44 69 73 63 6f 6e _TransportDiscon 0030: 6e 65 63 74 00 70 72 69 6e 74 66 40 40 47 4c 49 nect.printf@@GLI 0040: 42 43 5f 32 2e 30 00 6f 62 65 78 5f 6f 62 6a 65 BC_2.0.obex_obje 0050: 63 74 5f 72 65 61 64 73 74 72 65 61 6d 00 62 69 ct_readstream.bi 0060: 6e 64 40 40 47 4c 49 42 43 5f 32 2e 30 00 5f 66 nd@@GLIBC_2.0._f 0070: 69 6e 69 00 69 72 6f 62 65 78 5f 6c 69 73 74 65 ini.irobex_liste 0080: 6e 00 6d 65 6d 63 70 79 40 40 47 4c 49 42 43 5f n.memcpy@@GLIBC_ 0090: 32 2e 30 00 4f 42 45 58 5f 4f 62 6a 65 63 74 4e 2.0.OBEX_ObjectN 00a0: 65 77 00 73 74 72 72 63 68 72 40 40 47 4c 49 42 ew.strrchr@@GLIB 00b0: 43 5f 32 2e 30 00 6f 62 65 78 5f 63 6c 69 65 6e C_2.0.obex_clien 00c0: 74 00 4f 42 45 58 5f 52 65 73 70 6f 6e 73 65 54 t.OBEX_ResponseT 00d0: 6f 53 74 72 69 6e 67 00 4f 42 45 58 5f 53 65 74 oString.OBEX_Set 00e0: 43 75 73 74 6f 6d 44 61 74 61 00 4f 42 45 58 5f CustomData.OBEX_ 00f0: 55 6e 69 63 6f 64 65 54 6f 43 68 61 72 00 69 6e UnicodeToChar.in 0100: 6f 62 65 78 5f 70 72 65 70 61 72 65 5f 6c 69 73 obex_prepare_lis 0110: 74 65 6e 00 4f 42 45 58 5f 4f 62 6a 65 63 74 47 ten.OBEX_ObjectG 0120: 65 74 4e 65 78 74 48 65 61 64 65 72 00 6f 62 65 etNextHeader.obe 0130: 78 5f 69 6e 73 65 72 74 5f 63 6f 6e 6e 65 63 74 x_insert_connect 0140: 66 72 61 6d 65 00 49 72 4f 42 45 58 5f 54 72 61 frame.IrOBEX_Tra 0150: 6e 73 70 6f 72 74 43 6f 6e 6e 65 63 74 00 6f 70 nsportConnect.op 0160: 65 6e 40 40 47 en@@G > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > ACL data: handle 40 flags 0x02 dlen 12 L2CAP(d): cid 0x0040 len 8 [psm 3] RFCOMM(d): UIH: cr 0 dlci 18 pf 1 ilen 3 fcs 0x8 credits 2 0000: 90 00 03 ... < ACL data: handle 40 flags 0x02 dlen 192 < ACL data: handle 40 flags 0x01 dlen 192 < ACL data: handle 40 flags 0x01 dlen 192 < ACL data: handle 40 flags 0x01 dlen 100 L2CAP(d): cid 0x0047 len 672 [psm 3] RFCOMM(d): UIH: cr 1 dlci 18 pf 0 ilen 667 fcs 0xce 0000: 82 03 40 49 03 3d 4c 49 42 43 5f 32 2e 30 00 67 ..@I.=LIBC_2.0.g 0010: 5f 6e 65 74 62 75 66 5f 70 72 65 70 65 6e 64 5f _netbuf_prepend_ 0020: 68 64 72 00 67 5f 6e 65 74 62 75 66 5f 74 72 69 hdr.g_netbuf_tri 0030: 6d 00 4f 42 45 58 5f 48 61 6e 64 6c 65 49 6e 70 m.OBEX_HandleInp 0040: 75 74 00 65 61 73 79 5f 72 65 61 64 66 69 6c 65 ut.easy_readfile 0050: 00 67 5f 6e 65 74 62 75 66 5f 68 65 61 64 72 6f .g_netbuf_headro 0060: 6f 6d 00 4f 42 45 58 5f 4f 62 6a 65 63 74 53 65 om.OBEX_ObjectSe 0070: 74 4e 6f 6e 48 64 72 44 61 74 61 00 4f 42 45 58 tNonHdrData.OBEX 0080: 5f 47 65 74 46 44 00 62 74 6f 62 65 78 5f 64 69 _GetFD.btobex_di 0090: 73 63 6f 6e 6e 65 63 74 5f 72 65 71 75 65 73 74 sconnect_request 00a0: 00 5f 65 64 61 74 61 00 5f 47 4c 4f 42 41 4c 5f ._edata._GLOBAL_ 00b0: 4f 46 46 53 45 54 5f 54 41 42 4c 45 5f 00 66 72 OFFSET_TABLE_.fr 00c0: 65 65 40 40 47 4c 49 42 43 5f 32 2e 30 00 5f 65 ee@@GLIBC_2.0._e 00d0: 6e 64 00 66 69 6e 69 73 68 65 64 00 77 61 69 74 nd.finished.wait 00e0: 5f 66 6f 72 5f 72 73 70 00 6d 65 6d 73 65 74 40 _for_rsp.memset@ 00f0: 40 47 4c 49 42 43 5f 32 2e 30 00 63 6f 6e 6e 65 @GLIBC_2.0.conne 0100: 63 74 40 40 47 4c 49 42 43 5f 32 2e 30 00 73 74 ct@@GLIBC_2.0.st 0110: 72 6e 63 70 79 40 40 47 4c 49 42 43 5f 32 2e 30 rncpy@@GLIBC_2.0 0120: 00 6f 62 65 78 5f 74 72 61 6e 73 70 6f 72 74 5f .obex_transport_ 0130: 63 6f 6e 6e 65 63 74 5f 72 65 71 75 65 73 74 00 connect_request. 0140: 69 72 6f 62 65 78 5f 70 72 65 70 61 72 65 5f 63 irobex_prepare_c 0150: 6f 6e 6e 65 63 74 00 69 6e 6f 62 65 78 5f 6c 69 onnect.inobex_li 0160: 73 74 65 6e 00 4f 42 45 58 5f 43 6c 65 61 6e 75 sten.OBEX_Cleanu 0170: 70 00 4f 42 45 58 5f 4f 62 6a 65 63 74 47 65 74 p.OBEX_ObjectGet 0180: 4e 6f 6e 48 64 72 44 61 74 61 00 62 75 69 6c 64 NonHdrData.build 0190: 5f 6f 62 6a 65 63 74 5f 66 72 6f 6d 5f 66 69 6c _object_from_fil 01a0: 65 00 70 75 74 5f 64 6f 6e 65 00 6f 62 65 78 5f e.put_done.obex_ 01b0: 72 65 73 70 6f 6e 73 65 5f 72 65 71 75 65 73 74 response_request 01c0: 00 5f 49 4f 5f 73 74 64 69 6e 5f 75 73 65 64 00 ._IO_stdin_used. 01d0: 6f 62 65 78 5f 6f 62 6a 65 63 74 5f 6e 65 77 00 obex_object_new. 01e0: 49 72 4f 42 45 58 5f 53 65 72 76 65 72 52 65 67 IrOBEX_ServerReg 01f0: 69 73 74 65 72 00 73 70 72 69 6e 74 66 40 40 47 ister.sprintf@@G 0200: 4c 49 42 43 5f 32 2e 30 00 5f 5f 64 61 74 61 5f LIBC_2.0.__data_ 0210: 73 74 61 72 74 00 6c 61 73 74 5f 72 73 70 00 62 start.last_rsp.b 0220: 74 6f 62 65 78 5f 61 63 63 65 70 74 00 73 6f 63 tobex_accept.soc 0230: 6b 65 74 40 40 47 4c 49 42 43 5f 32 2e 30 00 6f ket@@GLIBC_2.0.o 0240: 62 65 78 5f 70 72 6f 74 6f 63 6f 6c 5f 74 79 70 bex_protocol_typ 0250: 65 00 73 65 72 76 65 72 5f 72 65 71 75 65 73 74 e.server_request 0260: 00 6f 62 65 78 5f 72 65 73 70 6f 6e 73 65 5f 74 .obex_response_t 0270: 6f 5f 73 74 72 69 6e 67 00 67 5f 6e 65 74 62 75 o_string.g_netbu 0280: 66 5f 72 65 73 65 72 76 65 00 6f 62 65 78 5f 64 f_reserve.obex_d 0290: 65 6c 65 74 65 5f 73 6f 63 6b 65 elete_socke < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... < ACL data: handle 40 flags 0x02 dlen 174 L2CAP(d): cid 0x0047 len 170 [psm 3] RFCOMM(d): UIH: cr 1 dlci 18 pf 0 ilen 165 fcs 0xce 0000: 74 00 4f 42 45 58 5f 4f 62 6a 65 63 74 41 64 64 t.OBEX_ObjectAdd 0010: 48 65 61 64 65 72 00 5f 5f 72 65 67 69 73 74 65 Header.__registe 0020: 72 5f 66 72 61 6d 65 5f 69 6e 66 6f 00 4f 42 45 r_frame_info.OBE 0030: 58 5f 4f 62 6a 65 63 74 53 65 74 48 64 72 4f 66 X_ObjectSetHdrOf 0040: 66 73 65 74 00 67 5f 6e 65 74 62 75 66 5f 72 65 fset.g_netbuf_re 0050: 63 79 63 6c 65 00 72 65 61 64 40 40 47 4c 49 42 cycle.read@@GLIB 0060: 43 5f 32 2e 30 00 6f 62 65 78 5f 64 75 6d 70 00 C_2.0.obex_dump. 0070: 5f 5f 67 6d 6f 6e 5f 73 74 61 72 74 5f 5f 00 6f __gmon_start__.o 0080: 62 65 78 5f 6f 62 6a 65 63 74 5f 72 65 63 65 69 bex_object_recei 0090: 76 65 00 73 74 72 63 70 79 40 40 47 4c 49 42 43 ve.strcpy@@GLIBC 00a0: 5f 32 2e 30 00 _2.0. > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > ACL data: handle 40 flags 0x02 dlen 12 L2CAP(d): cid 0x0040 len 8 [psm 3] RFCOMM(d): UIH: cr 0 dlci 18 pf 1 ilen 3 fcs 0x8 credits 2 0000: a0 00 03 ... < ACL data: handle 40 flags 0x02 dlen 11 L2CAP(d): cid 0x0047 len 7 [psm 3] RFCOMM(d): UIH: cr 1 dlci 18 pf 0 ilen 3 fcs 0xce 0000: 81 00 03 ... < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > ACL data: handle 40 flags 0x02 dlen 12 L2CAP(d): cid 0x0040 len 8 [psm 3] RFCOMM(d): UIH: cr 0 dlci 18 pf 1 ilen 3 fcs 0x8 credits 1 0000: a0 00 03 ... < ACL data: handle 40 flags 0x02 dlen 8 L2CAP(d): cid 0x0047 len 4 [psm 3] RFCOMM(s): DISC: cr 1 dlci 18 pf 1 ilen 0 fcs 0xd3 < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > ACL data: handle 40 flags 0x02 dlen 8 L2CAP(d): cid 0x0040 len 4 [psm 3] RFCOMM(s): DISC: cr 0 dlci 18 pf 1 ilen 0 fcs 0xb2 < ACL data: handle 40 flags 0x02 dlen 8 L2CAP(d): cid 0x0047 len 4 [psm 3] RFCOMM(s): UA: cr 0 dlci 18 pf 1 ilen 0 fcs 0x98 < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... < ACL data: handle 40 flags 0x02 dlen 8 L2CAP(d): cid 0x0047 len 4 [psm 3] RFCOMM(s): DISC: cr 1 dlci 0 pf 1 ilen 0 fcs 0xfd < ACL data: handle 40 flags 0x02 dlen 12 L2CAP(s): Disconn req: dcid 0x0047 scid 0x0040 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 40 packets 1 > ACL data: handle 40 flags 0x02 dlen 8 L2CAP(d): cid 0x0040 len 4 [psm 3] RFCOMM(s): DM: cr 1 dlci 18 pf 1 ilen 0 fcs 0x18 > ACL data: handle 40 flags 0x02 dlen 8 L2CAP(d): cid 0x0040 len 4 [psm 3] RFCOMM(s): UA: cr 1 dlci 0 pf 1 ilen 0 fcs 0xd7 > ACL data: handle 40 flags 0x02 dlen 12 L2CAP(s): Disconn rsp: dcid 0x0047 scid 0x0040 < HCI Command: Disconnect (0x01|0x0006) plen 3 handle 40 reason 0x13 Reason: Remote User Terminated Connection > HCI Event: Command Status (0x0f) plen 4 Disconnect (0x01|0x0006) status 0x00 ncmd 1 > HCI Event: Disconn Complete (0x05) plen 4 status 0x00 handle 40 reason 0x16 Reason: Connection Terminated by Local Host [-- Attachment #3: hci_core.c.diff --] [-- Type: application/octet-stream, Size: 3001 bytes --] --- C:\Copy of hci_core.c 2003-03-14 03:53:16.000000000 +-0530 +++ C:\hci_core.c 2006-08-21 17:23:36.000000000 +-0530 @@ -73,12 +73,13 @@ #define HCI_MAX_PROTO 2 struct hci_proto *hci_proto[HCI_MAX_PROTO]; /* HCI notifiers list */ static struct notifier_block *hci_notifier; +extern int __controller_to_host_fc; /* ---- HCI notifications ---- */ int hci_register_notifier(struct notifier_block *nb) { return notifier_chain_register(&hci_notifier, nb); @@ -221,24 +222,22 @@ /* Read Local Supported Features */ hci_send_cmd(hdev, OGF_INFO_PARAM, OCF_READ_LOCAL_FEATURES, 0, NULL); /* Read Buffer Size (ACL mtu, max pkt, etc.) */ hci_send_cmd(hdev, OGF_INFO_PARAM, OCF_READ_BUFFER_SIZE, 0, NULL); -#if 0 /* Host buffer size */ { host_buffer_size_cp bs; bs.acl_mtu = __cpu_to_le16(HCI_MAX_ACL_SIZE); bs.sco_mtu = HCI_MAX_SCO_SIZE; - bs.acl_max_pkt = __cpu_to_le16(0xffff); - bs.sco_max_pkt = __cpu_to_le16(0xffff); + bs.acl_max_pkt = __cpu_to_le16(0x0008); + bs.sco_max_pkt = __cpu_to_le16(0x0008); hci_send_cmd(hdev, OGF_HOST_CTL, OCF_HOST_BUFFER_SIZE, HOST_BUFFER_SIZE_CP_SIZE, &bs); } -#endif /* Read BD Address */ hci_send_cmd(hdev, OGF_INFO_PARAM, OCF_READ_BD_ADDR, 0, NULL); /* Optional initialization */ @@ -1031,13 +1030,16 @@ memcpy(skb_put(skb, plen), param, plen); BT_DBG("skb len %d", skb->len); skb->pkt_type = HCI_COMMAND_PKT; skb->dev = (void *) hdev; - skb_queue_tail(&hdev->cmd_q, skb); + if(ocf != OCF_HOST_NUM_OF_COMPLETED_PACKETS) + skb_queue_tail(&hdev->cmd_q, skb); + else + skb_queue_tail(&hdev->raw_q, skb); hci_sched_cmd(hdev); return 0; } /* Get data from the previously sent command */ @@ -1273,12 +1275,13 @@ /* ACL data packet */ static inline void hci_acldata_packet(struct hci_dev *hdev, struct sk_buff *skb) { hci_acl_hdr *ah = (void *) skb->data; struct hci_conn *conn; __u16 handle, flags; + host_num_of_completed_packets_cp cp; skb_pull(skb, HCI_ACL_HDR_SIZE); handle = __le16_to_cpu(ah->handle); flags = acl_flags(handle); handle = acl_handle(handle); @@ -1287,12 +1290,26 @@ hdev->stat.acl_rx++; hci_dev_lock(hdev); conn = conn_hash_lookup_handle(hdev, handle); hci_dev_unlock(hdev); + + /* If flow control has been enabled from Controller to Host + * send Host Number of Completed Packets Command + * Note that there is no event generated for this command + */ + + if(__controller_to_host_fc) { + cp.num_of_handles = 0x01; + cp.handle = handle; + cp.host_num_of_completed_packets = 0x01; + hci_send_cmd(hdev, OGF_HOST_CTL, OCF_HOST_NUM_OF_COMPLETED_PACKETS, + OCF_HOST_NUM_OF_COMPLETED_PACKETS_CP_SIZE, &cp); + printk(KERN_INFO "Sending Host No of Completed Packets:\n"); + } if (conn) { register struct hci_proto *hp; /* Send to upper protocol */ if ((hp = hci_proto[HCI_PROTO_L2CAP]) && hp->recv_acldata) { [-- Attachment #4: Type: text/plain, Size: 373 bytes --] ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 [-- Attachment #5: Type: text/plain, Size: 164 bytes --] _______________________________________________ Bluez-devel mailing list Bluez-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bluez-devel ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [Bluez-devel] Host Controller to Host Flow Control 2006-08-21 11:56 ` Mayank BATRA @ 2006-08-21 14:50 ` Marcel Holtmann 2006-08-21 13:05 ` Mayank BATRA 2006-08-21 21:10 ` Ulisses Furquim 1 sibling, 1 reply; 41+ messages in thread From: Marcel Holtmann @ 2006-08-21 14:50 UTC (permalink / raw) To: BlueZ development Hi Mayank, > > please use "hcidump -X -V" > > Here is the log with hcidump -X -V I added the two missing decodings to hcidump now. > > and if the HCI shows a wrong behavior with > > any of the new commands, please fix it. > > There is no wrong behaviour as such. Just that Host Number of completed > packets is being sent as soon as we get ACL Data on any connection handle. > > Do you think that the attached patch is decent enough for sending Host > Number of completed packets to the raw queue? (or is there a better way than > this?) Need to check that. At least you also have to check for OGF. You have to store the setting for host_fc in hci_dev, because it can be different for separate controllers. Regards Marcel ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Bluez-devel mailing list Bluez-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bluez-devel ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [Bluez-devel] Host Controller to Host Flow Control 2006-08-21 14:50 ` Marcel Holtmann @ 2006-08-21 13:05 ` Mayank BATRA 2006-08-21 14:00 ` Marcel Holtmann 0 siblings, 1 reply; 41+ messages in thread From: Mayank BATRA @ 2006-08-21 13:05 UTC (permalink / raw) To: 'BlueZ development' Hi Marcel, > I added the two missing decodings to hcidump now. I see the following five missing decodings in hcidump. Which ones did you miss out? (1)< HCI Command: Host Buffer Size (0x03|0x0033) plen 7 0000: 00 04 ff 08 00 08 00 ....... (2) > HCI Event: Command Complete (0x0e) plen 4 Host Buffer Size (0x03|0x0033) ncmd 1 0000: 00 . (3) < HCI Command: Set Host Controller To Host Flow Control (0x03|0x0031) plen 1 0000: 01 . (4) > HCI Event: Command Complete (0x0e) plen 4 Set Host Controller To Host Flow Control (0x03|0x0031) ncmd 1 0000: 00 . (5) < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 0000: 01 28 00 01 00 .(... > Need to check that. At least you also have to check for OGF. That's true. No other choice. > You have to > store the setting for host_fc in hci_dev, because it can be different > for separate controllers. I agree. But how to provide the user with the facility to switch flow control on/off? Like we modify security settings through hcid.conf. Regards, Mayank ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Bluez-devel mailing list Bluez-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bluez-devel ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [Bluez-devel] Host Controller to Host Flow Control 2006-08-21 13:05 ` Mayank BATRA @ 2006-08-21 14:00 ` Marcel Holtmann 0 siblings, 0 replies; 41+ messages in thread From: Marcel Holtmann @ 2006-08-21 14:00 UTC (permalink / raw) To: BlueZ development Hi Mayank, > > I added the two missing decodings to hcidump now. > > I see the following five missing decodings in hcidump. Which ones did you > miss out? > > (1)< HCI Command: Host Buffer Size (0x03|0x0033) plen 7 > 0000: 00 04 ff 08 00 08 00 ....... > > (2) > HCI Event: Command Complete (0x0e) plen 4 > Host Buffer Size (0x03|0x0033) ncmd 1 > 0000: 00 . > > (3) < HCI Command: Set Host Controller To Host Flow Control (0x03|0x0031) > plen 1 > 0000: 01 . > > (4) > HCI Event: Command Complete (0x0e) plen 4 > Set Host Controller To Host Flow Control (0x03|0x0031) ncmd 1 > 0000: 00 . > > (5) < HCI Command: Host Number of Completed Packets (0x03|0x0035) plen 5 > 0000: 01 28 00 01 00 .(... the code in the CVS should now take care of all five. > > You have to > > store the setting for host_fc in hci_dev, because it can be different > > for separate controllers. > > I agree. But how to provide the user with the facility to switch flow > control on/off? Like we modify security settings through hcid.conf. As I said, the kernel can track HCI command and their results. So you can actually detect inside the kernel if someone switched it on. See the page and inquiry scan for an example. After that you can simply add an additional command to hciconfig to set the host flow control and everything is fine. Regards Marcel ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Bluez-devel mailing list Bluez-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bluez-devel ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [Bluez-devel] Host Controller to Host Flow Control 2006-08-21 11:56 ` Mayank BATRA 2006-08-21 14:50 ` Marcel Holtmann @ 2006-08-21 21:10 ` Ulisses Furquim 2006-08-22 3:30 ` Mayank BATRA 2006-08-22 5:42 ` Marcel Holtmann 1 sibling, 2 replies; 41+ messages in thread From: Ulisses Furquim @ 2006-08-21 21:10 UTC (permalink / raw) To: BlueZ development Hi Mayank, On 8/21/06, Mayank BATRA <mayank.batra@st.com> wrote: > There is no wrong behaviour as such. Just that Host Number of completed > packets is being sent as soon as we get ACL Data on any connection handle. > > Do you think that the attached patch is decent enough for sending Host > Number of completed packets to the raw queue? (or is there a better way than > this?) I've noticed you sent a diff against hci.h from bluez-libs and not the one in the kernel, so please check that. One other thing is that you have to be careful with endianess issues (please check your patch against hci_core.c). And I really think we should have a hci_send_cmd_raw() or something like that instead of messing with hci_send_cmd(). Or maybe a new function that creates a skb from scratch just to send the host number of completed packets command? Marcel, what do you think? Regards, -- Ulisses ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Bluez-devel mailing list Bluez-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bluez-devel ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [Bluez-devel] Host Controller to Host Flow Control 2006-08-21 21:10 ` Ulisses Furquim @ 2006-08-22 3:30 ` Mayank BATRA 2006-08-22 5:39 ` Marcel Holtmann 2006-08-22 5:42 ` Marcel Holtmann 1 sibling, 1 reply; 41+ messages in thread From: Mayank BATRA @ 2006-08-22 3:30 UTC (permalink / raw) To: 'BlueZ development' [-- Attachment #1: Type: text/plain, Size: 676 bytes --] Hi Ulisses, > I've noticed you sent a diff against hci.h from bluez-libs and not the > one in the kernel, so please check that. Oops. My mistake. Here is the diff for the one in the kernel. > One other thing is that you > have to be careful with endianess issues (please check your patch > against hci_core.c). Which one do you mean in particular? 0x0008 or connection handle? > And I really think we should have a hci_send_cmd_raw() or something > like that instead of messing with hci_send_cmd(). Or maybe a new > function that creates a skb from scratch just to send the host number > of completed packets command? Marcel, what do you think? Right. Regards, Mayank [-- Attachment #2: hci.h.diff --] [-- Type: application/octet-stream, Size: 1342 bytes --] --- C:\Copy of hci.h 2006-08-22 08:54:31.000000000 +-0530 +++ C:\hci.h 2006-08-22 08:52:07.000000000 +-0530 @@ -266,20 +266,38 @@ #define OCF_WRITE_CLASS_OF_DEV 0x0024 typedef struct { __u8 dev_class[3]; } __attribute__ ((packed)) write_class_of_dev_cp; #define WRITE_CLASS_OF_DEV_CP_SIZE 3 +#define OCF_SET_CONTROLLER_TO_HOST_FC 0x0031 +typedef struct { + uint8_t flow_control_enable; +} __attribute__ ((packed)) set_controller_to_host_fc_cp; +#define SET_CONTROLLER_TO_HOST_FC_CP_SIZE 1 +typedef struct { + uint8_t status; +} __attribute__ ((packed)) set_controller_to_host_fc_rp; +#define SET_CONTROLLER_TO_HOST_FC_RP_SIZE 1 + #define OCF_HOST_BUFFER_SIZE 0x0033 typedef struct { __u16 acl_mtu; __u8 sco_mtu; __u16 acl_max_pkt; __u16 sco_max_pkt; } __attribute__ ((packed)) host_buffer_size_cp; #define HOST_BUFFER_SIZE_CP_SIZE 7 + +#define OCF_HOST_NUM_OF_COMPLETED_PACKETS 0x0035 +typedef struct { + uint8_t num_of_handles; + uint16_t handle; + uint16_t host_num_of_completed_packets; +} __attribute__ ((packed)) host_num_of_completed_packets_cp; +#define OCF_HOST_NUM_OF_COMPLETED_PACKETS_CP_SIZE 5 /* Link Control */ #define OGF_LINK_CTL 0x01 #define OCF_CREATE_CONN 0x0005 typedef struct { bdaddr_t bdaddr; [-- Attachment #3: Type: text/plain, Size: 373 bytes --] ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 [-- Attachment #4: Type: text/plain, Size: 164 bytes --] _______________________________________________ Bluez-devel mailing list Bluez-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bluez-devel ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [Bluez-devel] Host Controller to Host Flow Control 2006-08-22 3:30 ` Mayank BATRA @ 2006-08-22 5:39 ` Marcel Holtmann 2006-08-22 3:52 ` Mayank BATRA 0 siblings, 1 reply; 41+ messages in thread From: Marcel Holtmann @ 2006-08-22 5:39 UTC (permalink / raw) To: BlueZ development Hi Mayank, > > I've noticed you sent a diff against hci.h from bluez-libs and not the > > one in the kernel, so please check that. > > Oops. My mistake. Here is the diff for the one in the kernel. please follow the names, I just introduced for the libraray. They don't have to match, but I prefer if they do. The structs for setting the host to host controller flow control are also not needed. Only the OCF value. And the number of completed packets struct is variable. Please compare the number of completed packets events. > > One other thing is that you > > have to be careful with endianess issues (please check your patch > > against hci_core.c). > > Which one do you mean in particular? 0x0008 or connection handle? Every parameter that is uint16 needs an endian conversation. Regards Marcel ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Bluez-devel mailing list Bluez-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bluez-devel ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [Bluez-devel] Host Controller to Host Flow Control 2006-08-22 5:39 ` Marcel Holtmann @ 2006-08-22 3:52 ` Mayank BATRA 2006-08-22 5:54 ` Marcel Holtmann 0 siblings, 1 reply; 41+ messages in thread From: Mayank BATRA @ 2006-08-22 3:52 UTC (permalink / raw) To: 'BlueZ development' Hi Marcel, > please follow the names, I just introduced for the libraray. > They don't > have to match, but I prefer if they do. The structs for > setting the host > to host controller flow control are also not needed. Only the > OCF value. But actually, set controller to host flow control requires a parameter to tell which flow control we want to set. ACL, SCO or both. So a uint8_t parameter is required and hence the struct. > And the number of completed packets struct is variable. Please compare > the number of completed packets events. But a variable sized host number of completed packets command is required if we are sending number of completed packets for more than one connection handle in the same command, which is not the case currently. Regards, Mayank ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Bluez-devel mailing list Bluez-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bluez-devel ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [Bluez-devel] Host Controller to Host Flow Control 2006-08-22 3:52 ` Mayank BATRA @ 2006-08-22 5:54 ` Marcel Holtmann 2006-08-22 20:47 ` Ulisses Furquim 0 siblings, 1 reply; 41+ messages in thread From: Marcel Holtmann @ 2006-08-22 5:54 UTC (permalink / raw) To: BlueZ development Hi Mayank, > > please follow the names, I just introduced for the libraray. > > They don't > > have to match, but I prefer if they do. The structs for > > setting the host > > to host controller flow control are also not needed. Only the > > OCF value. > > But actually, set controller to host flow control requires a parameter to > tell which flow control we want to set. ACL, SCO or both. So a uint8_t > parameter is required and hence the struct. we don't send it from the kernel, do we? And even if we do, please check the HCI Write Scan Enable command. > > And the number of completed packets struct is variable. Please compare > > the number of completed packets events. > > But a variable sized host number of completed packets command is required if > we are sending number of completed packets for more than one connection > handle in the same command, which is not the case currently. Even if we don't do it at the moment, this doesn't mean that we mess up the kernel with wrong structs. Regards Marcel ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Bluez-devel mailing list Bluez-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bluez-devel ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [Bluez-devel] Host Controller to Host Flow Control 2006-08-22 5:54 ` Marcel Holtmann @ 2006-08-22 20:47 ` Ulisses Furquim 2006-08-23 3:54 ` Mayank BATRA ` (4 more replies) 0 siblings, 5 replies; 41+ messages in thread From: Ulisses Furquim @ 2006-08-22 20:47 UTC (permalink / raw) To: BlueZ development [-- Attachment #1: Type: text/plain, Size: 805 bytes --] Hi Marcel, Mayank, how about something like the attached patch? I've used some of Mayank's code and added some other parts. It's not complete and it's only compile-tested yet. I haven't done the interface to change the hci_dev->host_flow_ctl parameter from user space and we're sending the host number of completed packtes command after each packet (ACL or SCO, depending on the host_flow_ctl value). We're gonna need counters on both hci_dev and hci_conn structures to "ack" more than one packet and change hci_send_host_num_comp_pkts(). I'm also still not sure when we should send the host number of completed packets command. The specification says this command must be sent after the buffers are freed on the host but I don't know if we have to be strict about this. :-) Best regards, -- Ulisses [-- Attachment #2: host-flow-ctl-v0.patch --] [-- Type: text/x-patch, Size: 6086 bytes --] diff --git a/include/net/bluetooth/hci.h b/include/net/bluetooth/hci.h index b2bdb1a..0c5cd2c 100644 --- a/include/net/bluetooth/hci.h +++ b/include/net/bluetooth/hci.h @@ -184,6 +184,12 @@ #define HCI_LM_TRUSTED 0x0008 #define HCI_LM_RELIABLE 0x0010 #define HCI_LM_SECURE 0x0020 +/* Host flow control */ +#define HCI_HFC_NONE 0x00 +#define HCI_HFC_ACL 0x01 +#define HCI_HFC_SCO 0x02 +#define HCI_HFC_BOTH 0x03 + /* ----- HCI Commands ---- */ /* OGF & OCF values */ @@ -286,6 +292,11 @@ struct hci_cp_write_voice_setting { __le16 voice_setting; } __attribute__ ((packed)); +#define OCF_SET_HOST_FLOW_CTL 0x0031 +struct hci_cp_set_host_flow_ctl { + __u8 host_flow_ctl; +} __attribute__ ((packed)); + #define OCF_HOST_BUFFER_SIZE 0x0033 struct hci_cp_host_buffer_size { __le16 acl_mtu; @@ -294,6 +305,16 @@ struct hci_cp_host_buffer_size { __le16 sco_max_pkt; } __attribute__ ((packed)); +#define OCF_HOST_NUM_COMP_PKTS 0x0035 +struct hci_cp_host_num_comp_pkts { + __u8 num_hndl; + /* variable length part */ +} __attribute__ ((packed)); +struct hci_cp_handle_num_comp_pkts { + __le16 handle; + __le16 num_comp_pkts; +} __attribute__ ((packed)); + /* Link Control */ #define OGF_LINK_CTL 0x01 #define OCF_CREATE_CONN 0x0005 diff --git a/include/net/bluetooth/hci_core.h b/include/net/bluetooth/hci_core.h index d84855f..dca6797 100644 --- a/include/net/bluetooth/hci_core.h +++ b/include/net/bluetooth/hci_core.h @@ -82,6 +82,12 @@ struct hci_dev { __u16 sniff_min_interval; __u16 sniff_max_interval; + __u8 host_flow_ctl; + __u16 host_acl_mtu; + __u8 host_sco_mtu; + __u16 acl_max_pkt; + __u16 sco_max_pkt; + unsigned long quirks; atomic_t cmd_cnt; diff --git a/net/bluetooth/hci_core.c b/net/bluetooth/hci_core.c index 5ed4742..df91d82 100644 --- a/net/bluetooth/hci_core.c +++ b/net/bluetooth/hci_core.c @@ -209,17 +209,15 @@ static void hci_init_req(struct hci_dev /* Read Buffer Size (ACL mtu, max pkt, etc.) */ hci_send_cmd(hdev, OGF_INFO_PARAM, OCF_READ_BUFFER_SIZE, 0, NULL); -#if 0 /* Host buffer size */ { struct hci_cp_host_buffer_size cp; - cp.acl_mtu = __cpu_to_le16(HCI_MAX_ACL_SIZE); - cp.sco_mtu = HCI_MAX_SCO_SIZE; - cp.acl_max_pkt = __cpu_to_le16(0xffff); - cp.sco_max_pkt = __cpu_to_le16(0xffff); + cp.acl_mtu = __cpu_to_le16(hdev->host_acl_mtu); + cp.sco_mtu = hdev->host_sco_mtu; + cp.acl_max_pkt = __cpu_to_le16(hdev->acl_max_pkt); + cp.sco_max_pkt = __cpu_to_le16(hdev->sco_max_pkt); hci_send_cmd(hdev, OGF_HOST_CTL, OCF_HOST_BUFFER_SIZE, sizeof(cp), &cp); } -#endif /* Read BD Address */ hci_send_cmd(hdev, OGF_INFO_PARAM, OCF_READ_BD_ADDR, 0, NULL); @@ -1047,6 +1045,46 @@ int hci_send_cmd(struct hci_dev *hdev, _ return 0; } +static int hci_send_host_num_comp_pkts(struct hci_dev *hdev, __u16 handle) +{ + struct hci_cp_handle_num_comp_pkts *hnum; + struct hci_cp_host_num_comp_pkts *cp; + struct hci_command_hdr *hdr; + struct sk_buff *skb; + __u32 plen, len; + + plen = sizeof(*cp) + sizeof(*hnum); + len = HCI_COMMAND_HDR_SIZE + plen; + + skb = bt_skb_alloc(len, GFP_ATOMIC); + if (!skb) { + BT_ERR("%s can't allocate memory for HCI command", hdev->name); + return -ENOMEM; + } + + hdr = (struct hci_command_hdr *)skb_put(skb, HCI_COMMAND_HDR_SIZE); + hdr->opcode = __cpu_to_le16(hci_opcode_pack(OGF_HOST_CTL, + OCF_HOST_NUM_COMP_PKTS)); + hdr->plen = plen; + + cp = (struct hci_cp_host_num_comp_pkts *)skb_put(skb, sizeof(*cp)); + hnum = (struct hci_cp_handle_num_comp_pkts *)skb_put(skb, + sizeof(*hnum)); + + cp->num_hndl = 1; + hnum->handle = __cpu_to_le16(handle); + hnum->num_comp_pkts = __constant_cpu_to_le16(1); + + BT_DBG("skb len %d", skb->len); + + bt_cb(skb)->pkt_type = HCI_COMMAND_PKT; + skb->dev = (void *)hdev; + skb_queue_tail(&hdev->raw_q, skb); + hci_sched_tx(hdev); + + return 0; +} + /* Get data from the previously sent command */ void *hci_sent_cmd_data(struct hci_dev *hdev, __u16 ogf, __u16 ocf) { @@ -1303,10 +1341,13 @@ static inline void hci_acldata_packet(st hci_dev_lock(hdev); conn = hci_conn_hash_lookup_handle(hdev, handle); hci_dev_unlock(hdev); - + if (conn) { register struct hci_proto *hp; + if (hdev->host_flow_ctl & HCI_HFC_ACL) + hci_send_host_num_comp_pkts(hdev, handle); + hci_conn_enter_active_mode(conn); /* Send to upper protocol */ @@ -1344,6 +1385,9 @@ static inline void hci_scodata_packet(st if (conn) { register struct hci_proto *hp; + if (hdev->host_flow_ctl & HCI_HFC_SCO) + hci_send_host_num_comp_pkts(hdev, handle); + /* Send to upper protocol */ if ((hp = hci_proto[HCI_PROTO_SCO]) && hp->recv_scodata) { hp->recv_scodata(conn, skb); diff --git a/net/bluetooth/hci_event.c b/net/bluetooth/hci_event.c index 3896dab..78795ff 100644 --- a/net/bluetooth/hci_event.c +++ b/net/bluetooth/hci_event.c @@ -139,7 +139,7 @@ static void hci_cc_link_policy(struct hc /* Command Complete OGF HOST_CTL */ static void hci_cc_host_ctl(struct hci_dev *hdev, __u16 ocf, struct sk_buff *skb) { - __u8 status, param; + __u8 status, param, host_flow_ctl; __u16 setting; struct hci_rp_read_voice_setting *vs; void *sent; @@ -280,9 +280,33 @@ static void hci_cc_host_ctl(struct hci_d hci_req_complete(hdev, status); break; + case OCF_SET_HOST_FLOW_CTL: + sent = hci_sent_cmd_data(hdev, OGF_HOST_CTL, + OCF_SET_HOST_FLOW_CTL); + if (!sent) + break; + + status = *((__u8 *)skb->data); + host_flow_ctl = *((__u8 *)sent); + + if (!status && hdev->host_flow_ctl != host_flow_ctl) { + hdev->host_flow_ctl = host_flow_ctl; + BT_DBG("%s: host flow ctl 0x%x", hdev->name, + host_flow_ctl); + } + break; + case OCF_HOST_BUFFER_SIZE: status = *((__u8 *) skb->data); - if (status) { + if (!status) { + struct hci_cp_set_host_flow_ctl cp; + + if (!(cp.host_flow_ctl = hdev->host_flow_ctl)) + break; + + hci_send_cmd(hdev, OGF_HOST_CTL, + OCF_SET_HOST_FLOW_CTL, sizeof(cp), &cp); + } else { BT_DBG("%s OCF_BUFFER_SIZE failed %d", hdev->name, status); hci_req_complete(hdev, status); } [-- Attachment #3: Type: text/plain, Size: 373 bytes --] ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 [-- Attachment #4: Type: text/plain, Size: 164 bytes --] _______________________________________________ Bluez-devel mailing list Bluez-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bluez-devel ^ permalink raw reply related [flat|nested] 41+ messages in thread
* Re: [Bluez-devel] Host Controller to Host Flow Control 2006-08-22 20:47 ` Ulisses Furquim @ 2006-08-23 3:54 ` Mayank BATRA 2006-08-23 5:48 ` Mayank BATRA ` (3 subsequent siblings) 4 siblings, 0 replies; 41+ messages in thread From: Mayank BATRA @ 2006-08-23 3:54 UTC (permalink / raw) To: 'BlueZ development' Hi Ulisses, > how about something like the attached patch? I've used some of > Mayank's code and added some other parts. It's not complete and it's > only compile-tested yet. I'll try this today. Regards, Mayank ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Bluez-devel mailing list Bluez-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bluez-devel ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [Bluez-devel] Host Controller to Host Flow Control 2006-08-22 20:47 ` Ulisses Furquim 2006-08-23 3:54 ` Mayank BATRA @ 2006-08-23 5:48 ` Mayank BATRA 2006-08-23 13:06 ` Ulisses Furquim 2006-08-23 8:03 ` Mayank BATRA ` (2 subsequent siblings) 4 siblings, 1 reply; 41+ messages in thread From: Mayank BATRA @ 2006-08-23 5:48 UTC (permalink / raw) To: 'BlueZ development' Hi Ulisses, > how about something like the attached patch? I've used some of > Mayank's code and added some other parts. It's not complete and it's > only compile-tested yet. case OCF_HOST_BUFFER_SIZE: status =3D *((__u8 *) skb->data); - if (status) { + if (!status) { + struct hci_cp_set_host_flow_ctl cp; + + if (!(cp.host_flow_ctl =3D hdev->host_flow_ctl)) + break; + + hci_send_cmd(hdev, OGF_HOST_CTL, + OCF_SET_HOST_FLOW_CTL, sizeof(cp), &cp); + } else { BT_DBG("%s OCF_BUFFER_SIZE failed %d", hdev->name, status); hci_req_complete(hdev, status); } If status =3D 0 it means that the command was success. But in the patch that you sent, it=92s the other way round. Is it a mistake? Regards, Mayank ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easi= er Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=3Dlnk&kid=3D120709&bid=3D263057&dat=3D1= 21642 _______________________________________________ Bluez-devel mailing list Bluez-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bluez-devel ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [Bluez-devel] Host Controller to Host Flow Control 2006-08-23 5:48 ` Mayank BATRA @ 2006-08-23 13:06 ` Ulisses Furquim 0 siblings, 0 replies; 41+ messages in thread From: Ulisses Furquim @ 2006-08-23 13:06 UTC (permalink / raw) To: BlueZ development Hi Mayank, On 8/23/06, Mayank BATRA <mayank.batra@st.com> wrote: > case OCF_HOST_BUFFER_SIZE: > status = *((__u8 *) skb->data); > - if (status) { > + if (!status) { > + struct hci_cp_set_host_flow_ctl cp; > + > + if (!(cp.host_flow_ctl = hdev->host_flow_ctl)) > + break; > + > + hci_send_cmd(hdev, OGF_HOST_CTL, > + OCF_SET_HOST_FLOW_CTL, sizeof(cp), > &cp); > + } else { > BT_DBG("%s OCF_BUFFER_SIZE failed %d", hdev->name, > status); > hci_req_complete(hdev, status); > } > > If status = 0 it means that the command was success. But in the patch that > you sent, it's the other way round. Is it a mistake? I think it's right, take a look at the patch again (there's a !status there). Regards, -- Ulisses ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Bluez-devel mailing list Bluez-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bluez-devel ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [Bluez-devel] Host Controller to Host Flow Control 2006-08-22 20:47 ` Ulisses Furquim 2006-08-23 3:54 ` Mayank BATRA 2006-08-23 5:48 ` Mayank BATRA @ 2006-08-23 8:03 ` Mayank BATRA 2006-08-23 14:28 ` Marcel Holtmann 2006-08-23 18:44 ` Steven Singer 2006-10-31 13:25 ` Mayank BATRA 4 siblings, 1 reply; 41+ messages in thread From: Mayank BATRA @ 2006-08-23 8:03 UTC (permalink / raw) To: 'BlueZ development' [-- Attachment #1: Type: text/plain, Size: 334 bytes --] Hi Ulisses, Marcel, > how about something like the attached patch? I've used some of > Mayank's code and added some other parts. It's not complete and it's > only compile-tested yet. I think we will require the attached patch for setting the various parameters of hci_dev structure from hciconfig (through ioctls). Regards, Mayank [-- Attachment #2: hci.h.diff --] [-- Type: application/octet-stream, Size: 700 bytes --] --- C:\Diffs\Copy of hci.h 2003-03-14 03:53:14.000000000 +-0530 +++ C:\Diffs\hci.h 2006-08-23 12:46:24.000000000 +-0530 @@ -82,12 +82,16 @@ #define HCISETENCRYPT _IOW('H', 223, int) #define HCISETPTYPE _IOW('H', 224, int) #define HCISETLINKPOL _IOW('H', 225, int) #define HCISETLINKMODE _IOW('H', 226, int) #define HCISETACLMTU _IOW('H', 227, int) #define HCISETSCOMTU _IOW('H', 228, int) +#define HCISETHOSTFC _IOW('H', 229, int) +#define HCISETHOSTACLMTU _IOW('H', 230, int) +#define HCISETHOSTSCOMTU _IOW('H', 231, int) + #define HCIINQUIRY _IOR('H', 240, int) /* HCI timeouts */ #define HCI_CONN_TIMEOUT (HZ * 40) #define HCI_DISCONN_TIMEOUT (HZ * 2) [-- Attachment #3: hci_core.c.diff --] [-- Type: application/octet-stream, Size: 729 bytes --] --- C:\Diffs\Copy of hci_core.c 2003-03-14 03:53:16.000000000 +-0530 +++ C:\Diffs\hci_core.c 2006-08-23 12:40:20.000000000 +-0530 @@ -691,12 +691,26 @@ break; case HCISETSCOMTU: hdev->sco_mtu = *((__u16 *)&dr.dev_opt + 1); hdev->sco_pkts = *((__u16 *)&dr.dev_opt + 0); break; + + case HCISETHOSTFC: + hdev->host_flow_ctl = (__u8) dr.dev_opt; + break; + + case HCISETHOSTACLMTU: + hdev->host_acl_mtu = *((__u16 *)&dr.dev_opt + 1); + hdev->acl_max_pkts = *((__u16 *)&dr.dev_opt + 0); + break; + + case HCISETHOSTSCOMTU: + hdev->host_sco_mtu = *((__u16 *)&dr.dev_opt + 1); + hdev->sco_max_pkts = *((__u16 *)&dr.dev_opt + 0); + break; default: err = -EINVAL; break; } hci_dev_put(hdev); [-- Attachment #4: hci_sock.c.diff --] [-- Type: application/octet-stream, Size: 486 bytes --] --- C:\Diffs\Copy of hci_sock.c 2006-08-23 12:32:33.000000000 +-0530 +++ C:\Diffs\hci_sock.c 2006-08-23 12:34:30.000000000 +-0530 @@ -233,12 +233,15 @@ case HCISETENCRYPT: case HCISETPTYPE: case HCISETLINKPOL: case HCISETLINKMODE: case HCISETACLMTU: case HCISETSCOMTU: + case HCISETHOSTFC: + case HCISETHOSTACLMTU: + case HCISETHOSTSCOMTU: if (!capable(CAP_NET_ADMIN)) return -EACCES; return hci_dev_cmd(cmd, arg); case HCIINQUIRY: return hci_inquiry(arg); [-- Attachment #5: hciconfig.c.diff --] [-- Type: application/octet-stream, Size: 3099 bytes --] --- C:\Diffs\Copy of hciconfig.c 2006-08-23 12:46:46.000000000 +-0530 +++ C:\Diffs\hciconfig.c 2006-08-23 13:28:57.000000000 +-0530 @@ -1298,12 +1298,81 @@ print_dev_hdr(&di); printf("\tAFH mode: %s\n", mode == 1 ? "Enabled" : "Disabled"); } } +static void cmd_hostfc(int ctl, int hdev, char *opt) +{ + struct hci_dev_req dr; + + dr.dev_id = hdev; + if (!strcmp(opt, "hostfcoff")) { + dr.dev_opt = HCI_HFC_NONE; + } + else if(!strcmp(opt, "hostfcacl")) { + dr.dev_opt = HCI_HFC_ACL; + } + else if(!strcmp(opt, "hostfcsco")) { + dr.dev_opt = HCI_HFC_SCO; + } + else if(!strcmp(opt, "hostfcboth")) { + dr.dev_opt = HCI_HFC_BOTH; + } + else { + printf("Invalid option for setting host flow control\n"); + exit(1); + } + + if (ioctl(ctl, HCISETHOSTFC, (unsigned long) &dr) < 0) { + fprintf(stderr, "Can't set host flow control on hci%d: %s (%d)\n", + hdev, strerror(errno), errno); + exit(1); + } +} + +static void cmd_hostaclmtu(int ctl, int hdev, char *opt) +{ + struct hci_dev_req dr = { dev_id: hdev }; + uint16_t mtu, mpkt; + + if (!opt) + return; + + if (sscanf(opt, "%4hu:%4hu", &mtu, &mpkt) != 2) + return; + + dr.dev_opt = htobl(htobs(mpkt) | (htobs(mtu) << 16)); + + if (ioctl(ctl, HCISETHOSTACLMTU, (unsigned long) &dr) < 0) { + fprintf(stderr, "Can't set HOST ACL mtu on hci%d: %s(%d)\n", + hdev, strerror(errno), errno); + exit(1); + } +} + +static void cmd_hostscomtu(int ctl, int hdev, char *opt) +{ + struct hci_dev_req dr = { dev_id: hdev }; + uint16_t mtu, mpkt; + + if (!opt) + return; + + if (sscanf(opt, "%4hu:%4hu", &mtu, &mpkt) != 2) + return; + + dr.dev_opt = htobl(htobs(mpkt) | (htobs(mtu) << 16)); + + if (ioctl(ctl, HCISETHOSTSCOMTU, (unsigned long) &dr) < 0) { + fprintf(stderr, "Can't set HOST SCO mtu on hci%d: %s (%d)\n", + hdev, strerror(errno), errno); + exit(1); + } +} + static void print_rev_ericsson(int dd) { struct hci_request rq; unsigned char buf[102]; memset(&rq, 0, sizeof(rq)); @@ -1511,12 +1580,18 @@ { "putkey", cmd_putkey, "<bdaddr>", "Store link key on the device" }, { "delkey", cmd_delkey, "<bdaddr>", "Delete link key from the device" }, { "commands", cmd_commands, 0, "Display supported commands" }, { "features", cmd_features, 0, "Display device features" }, { "version", cmd_version, 0, "Display version information" }, { "revision", cmd_revision, 0, "Display revision information" }, + { "hostfcacl", cmd_hostfc, 0, "Enable host flow control for ACL data packets only"}, + { "hostfcsco", cmd_hostfc, 0, "Enable host flow control for SCO data packets only"}, + { "hostfcboth", cmd_hostfc, 0, "Enable host flow control for both ACL and SCOdata packets"}, + { "hostfcoff", cmd_hostfc, 0, "Disable Host Flow Control"}, + { "hostaclmtu", cmd_hostaclmtu, "<mtu:pkt>", "Set host ACL MTU and host number of packets" }, + { "hostscomtu", cmd_hostscomtu, "<mtu:pkt>", "Set host SCO MTU and host number of packets" }, { NULL, NULL, 0 } }; static void usage(void) { int i; [-- Attachment #6: Type: text/plain, Size: 373 bytes --] ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 [-- Attachment #7: Type: text/plain, Size: 164 bytes --] _______________________________________________ Bluez-devel mailing list Bluez-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bluez-devel ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [Bluez-devel] Host Controller to Host Flow Control 2006-08-23 8:03 ` Mayank BATRA @ 2006-08-23 14:28 ` Marcel Holtmann 0 siblings, 0 replies; 41+ messages in thread From: Marcel Holtmann @ 2006-08-23 14:28 UTC (permalink / raw) To: BlueZ development Hi Mayank, > > how about something like the attached patch? I've used some of > > Mayank's code and added some other parts. It's not complete and it's > > only compile-tested yet. > > I think we will require the attached patch for setting the various > parameters of hci_dev structure from hciconfig (through ioctls). no. The kernel will find out what host flow control mode to use when someone sends the HCI command. And hciconfig should only send this command. Variable buffer size are not making sense in my opinion. We know what can handle and we should always accept the maximum. Let the chip decide the actual used buffer size. Regards Marcel ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Bluez-devel mailing list Bluez-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bluez-devel ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [Bluez-devel] Host Controller to Host Flow Control 2006-08-22 20:47 ` Ulisses Furquim ` (2 preceding siblings ...) 2006-08-23 8:03 ` Mayank BATRA @ 2006-08-23 18:44 ` Steven Singer 2006-08-23 20:14 ` Ulisses Furquim 2006-10-31 13:25 ` Mayank BATRA 4 siblings, 1 reply; 41+ messages in thread From: Steven Singer @ 2006-08-23 18:44 UTC (permalink / raw) To: BlueZ development Ulisses Furquim wrote: > I'm also still not sure when we should send the host number of > completed packets command. The specification says this command must be > sent after the buffers are freed on the host but I don't know if we > have to be strict about this. :-) Sending back the command gives a commitment to the chip that you will be able to take another maximum size block of data. Sending the command before this is true will lead to a disaster. So, if you have only a finite amount of memory to hold data coming from the chip, you need to have at least enough space in that memory to hold the maximum amount of data the chip could send you at that point. You need to worry about this most on resource limited systems. In which case, you almost certainly want to preallocate the memory for the receive so that you can guarantee that it will be available when the packet arrives. If you preallocate a static buffer then as soon as the data is passed out of the buffer the space being held in that buffer by that message can be freed. This is the earliest the command could be issued. This works nicely with ring buffers and is the scenario the spec is thinking of. It's then a system problem to make sure that you can't take messages out of that buffer and queue them for their recipients so fast that you deplete the memory of the entire system. In this case you can put in some flow control mechanism internally in your system and take messages out of the static buffer only when flow control allows. With a dynamic allocation strategy, you should really be sending back the command once you've allocated enough memory to receive the next packet from the chip. Again, this could involve a flow control interlock with the rest of the system. One strategy for flow control is for the final consumer of the message to inform you that the message has been processed and at that point you could allocate memory to hold a new from chip message and send the command. Alternatively, you could put flow control between each layer of the stack so that the stop indication gradually flows back from a stalled layer until the host stops issuing flow control tokens to the controller. Implementing host controller to host flow control without also implementing some flow control mechanism through the layers of your stack (if necessary, all the way to the application) just pushes any memory exhaustion issues to other points in the system. On a big system (with multiple megabytes of memory free) this may not be a significant issue. On a small embedded system where you need to track to the kilobyte level, it can be. Apart from avoiding a crash, the other issue of interest is bandwidth. You want to make sure that the link from the controller never stalls. To do this, you must make sure that the controller never runs out of flow control tokens, that is, you want to return them in advance of the controller running out. How much in advance depends on the reaction time of the controller. I would have thought that provided you're returning tokens, let's say, at least 5 ms and at least 2 tokens before the controller will run out then it shouldn't stall. However, if you can afford it, a much larger safety margin would be nicer. It can be more efficient on bandwidth limited host transports (UART) to return multiple tokens in a single command. This suggests that you shouldn't queue up lots of commands each to free up one token. Ideally you'd note that you needed to send a token, but not actually fill in the command payload until the host transport was free to send the command. If the transport were immediately free then you'd send just a single token but if the transport were busy (say, sending a large data packet to the controller) then you might be able to send multiple tokens in a single command once the transport freed up. One thing you may want to watch is whether the controller can track all the tokens you give it. If it can't then it may be able to use just a subset. I which case, if you're waiting for the number of outstanding tokens to hit a watermark, you may find that flow control stops long before that point because the controller has run out of resources to track outstanding packets. These are all advanced techniques. For the moment, it's probably easiest just to send tokens as soon as they become available. Worry about optimising it once it's working properly. Don't forget that when a disconnection occurs, all outstanding flow control tokens for that handle are returned implicitly. - Steven -- To access the latest news from CSR copy this link into a web browser: http://www.csr.com/email_sig.php ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Bluez-devel mailing list Bluez-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bluez-devel ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [Bluez-devel] Host Controller to Host Flow Control 2006-08-23 18:44 ` Steven Singer @ 2006-08-23 20:14 ` Ulisses Furquim 0 siblings, 0 replies; 41+ messages in thread From: Ulisses Furquim @ 2006-08-23 20:14 UTC (permalink / raw) To: BlueZ development Hi Steven, On 8/23/06, Steven Singer <steven.singer@csr.com> wrote: > Sending back the command gives a commitment to the chip that you will > be able to take another maximum size block of data. Sending the command > before this is true will lead to a disaster. Yes, you're right. The problem seems to be knowing when this commitment can be given if we don't have a preallocated static buffer or some dynamic allocation strategy implemented. [ snip ] > These are all advanced techniques. For the moment, it's probably > easiest just to send tokens as soon as they become available. Worry > about optimising it once it's working properly. Thanks for pointing all that out. :-) We're trying to make it work but we really have to know when we can be sure a flow control token became avaialble. > Don't forget that when a disconnection occurs, all outstanding > flow control tokens for that handle are returned implicitly. Right, I won't forget, thanks. Best regards, -- Ulisses ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Bluez-devel mailing list Bluez-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bluez-devel ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [Bluez-devel] Host Controller to Host Flow Control 2006-08-22 20:47 ` Ulisses Furquim ` (3 preceding siblings ...) 2006-08-23 18:44 ` Steven Singer @ 2006-10-31 13:25 ` Mayank BATRA 2006-10-31 14:30 ` Ulisses Furquim 4 siblings, 1 reply; 41+ messages in thread From: Mayank BATRA @ 2006-10-31 13:25 UTC (permalink / raw) To: 'BlueZ development' Hi Marcel, Ulisses, I am wondering whether this code(i.e. controller to host flow control) has been included in one of the -mh kernel patch. Can you please confirm? Best Regards, Mayank Ulisses Furquim wrote: > > Hi Marcel, Mayank, > > how about something like the attached patch? I've used some of > Mayank's code and added some other parts. It's not complete and it's > only compile-tested yet. > > I haven't done the interface to change the hci_dev->host_flow_ctl > parameter from user space and we're sending the host number of > completed packtes command after each packet (ACL or SCO, depending on > the host_flow_ctl value). We're gonna need counters on both hci_dev > and hci_conn structures to "ack" more than one packet and change > hci_send_host_num_comp_pkts(). > > I'm also still not sure when we should send the host number of > completed packets command. The specification says this command must be > sent after the buffers are freed on the host but I don't know if we > have to be strict about this. :-) > > Best regards, > > -- Ulisses > ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Bluez-devel mailing list Bluez-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bluez-devel ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [Bluez-devel] Host Controller to Host Flow Control 2006-10-31 13:25 ` Mayank BATRA @ 2006-10-31 14:30 ` Ulisses Furquim 2006-11-01 4:09 ` Mayank BATRA 0 siblings, 1 reply; 41+ messages in thread From: Ulisses Furquim @ 2006-10-31 14:30 UTC (permalink / raw) To: BlueZ development Hi Mayank, On 10/31/06, Mayank BATRA <mayank.batra@st.com> wrote: > I am wondering whether this code(i.e. controller to host flow control) has > been included in one of the -mh kernel patch. > Can you please confirm? I don't think so. You're probably confusing it with the L2CAP retransmission and flow control patch that is included in the latest -mh patches. Regards, -- Ulisses ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Bluez-devel mailing list Bluez-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bluez-devel ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [Bluez-devel] Host Controller to Host Flow Control 2006-10-31 14:30 ` Ulisses Furquim @ 2006-11-01 4:09 ` Mayank BATRA 0 siblings, 0 replies; 41+ messages in thread From: Mayank BATRA @ 2006-11-01 4:09 UTC (permalink / raw) To: 'BlueZ development' Hi Ulisses, > > I am wondering whether this code(i.e. controller to host > >flow control) has > > been included in one of the -mh kernel patch. > > Can you please confirm? > > I don't think so. You're probably confusing it with the L2CAP > retransmission and flow control patch that is included in the latest > -mh patches. Of course I am not confused between the two. Just that I wanted to know whether the Host Flow control patch is inside a -mh patch. So I think it is not there. Best Regards, Mayank ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Bluez-devel mailing list Bluez-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bluez-devel ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [Bluez-devel] Host Controller to Host Flow Control 2006-08-21 21:10 ` Ulisses Furquim 2006-08-22 3:30 ` Mayank BATRA @ 2006-08-22 5:42 ` Marcel Holtmann 1 sibling, 0 replies; 41+ messages in thread From: Marcel Holtmann @ 2006-08-22 5:42 UTC (permalink / raw) To: BlueZ development Hi Ulisses, > And I really think we should have a hci_send_cmd_raw() or something > like that instead of messing with hci_send_cmd(). Or maybe a new > function that creates a skb from scratch just to send the host number > of completed packets command? Marcel, what do you think? no additional function for only one call. We either make hci_send_cmd() aware of the special case or we need to queue this command by hand. I have to check the internals of the command flow before I can actually tell you what's the best way. Haven't looked at that for quite some time and don't know it from memory. Regards Marcel ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Bluez-devel mailing list Bluez-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bluez-devel ^ permalink raw reply [flat|nested] 41+ messages in thread
end of thread, other threads:[~2006-11-01 4:09 UTC | newest] Thread overview: 41+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2006-08-08 3:56 [Bluez-devel] Host Controller to Host Flow Control Mayank BATRA 2006-08-08 12:52 ` Ulisses Furquim 2006-08-09 21:58 ` Marcel Holtmann 2006-08-10 4:33 ` Mayank BATRA 2006-08-10 8:35 ` Mayank BATRA 2006-08-10 13:00 ` Ulisses Furquim 2006-08-10 13:43 ` Mayank BATRA 2006-08-14 15:24 ` Mayank BATRA 2006-08-14 20:26 ` Marcel Holtmann 2006-08-17 4:43 ` Mayank BATRA 2006-08-17 12:59 ` Marcel Holtmann 2006-08-17 11:20 ` Mayank BATRA 2006-08-17 13:45 ` Marcel Holtmann 2006-08-18 9:54 ` Mayank BATRA 2006-08-18 14:04 ` Marcel Holtmann 2006-08-18 12:26 ` Mayank BATRA 2006-08-21 9:41 ` Mayank BATRA 2006-08-21 11:51 ` Marcel Holtmann 2006-08-21 11:28 ` Mayank BATRA 2006-08-21 13:34 ` Marcel Holtmann 2006-08-21 11:56 ` Mayank BATRA 2006-08-21 14:50 ` Marcel Holtmann 2006-08-21 13:05 ` Mayank BATRA 2006-08-21 14:00 ` Marcel Holtmann 2006-08-21 21:10 ` Ulisses Furquim 2006-08-22 3:30 ` Mayank BATRA 2006-08-22 5:39 ` Marcel Holtmann 2006-08-22 3:52 ` Mayank BATRA 2006-08-22 5:54 ` Marcel Holtmann 2006-08-22 20:47 ` Ulisses Furquim 2006-08-23 3:54 ` Mayank BATRA 2006-08-23 5:48 ` Mayank BATRA 2006-08-23 13:06 ` Ulisses Furquim 2006-08-23 8:03 ` Mayank BATRA 2006-08-23 14:28 ` Marcel Holtmann 2006-08-23 18:44 ` Steven Singer 2006-08-23 20:14 ` Ulisses Furquim 2006-10-31 13:25 ` Mayank BATRA 2006-10-31 14:30 ` Ulisses Furquim 2006-11-01 4:09 ` Mayank BATRA 2006-08-22 5:42 ` Marcel Holtmann
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.