All of lore.kernel.org
 help / color / mirror / Atom feed
* GSoC: Bluetooth Replayer update
@ 2012-05-21 18:39 Anton Weber
  2012-05-22  2:00 ` Gustavo Padovan
  0 siblings, 1 reply; 6+ messages in thread
From: Anton Weber @ 2012-05-21 18:39 UTC (permalink / raw)
  To: linux-bluetooth

Hello everyone!

Now that the coding period for GSoC started, I will be regularly
posting updates to the mailing list.
This is meant to share my progress, but also to get get the community involved.
If you have any feedback or suggestions, about the things I wrote or
about my project in general, please let me know!
As mentioned in my first email, you can always contact me directly via
email or IRC as well.

To give everyone a better idea of what my project is about, I have
uploaded the initial project proposal:
http://antweb.me/tl_files/blog/gsoc12/gsoc_proposal.pdf
I will do things slightly differently now that I have more of an idea
what I'm dealing with, but the main structure should stay the same.

What happened so far:
- read up on various guides and the Bluetooth specification
- played around with git (will upload my work to github once I got
that far and possibly fork the bluez repo at some point if required)
- went through hcidump sources (found many bits of code I can reuse,
especially the parser)
- had a look at hciemu, but didn't get too far yet

Next up:
- Find out more about hciemu
- Getting used to automake
- Write a tool that can execute a simple sequence of commands on a
VHCI interface.
  I will start off with a standalone tool for now, but it might be a
good idea to integrate it in hcidump (more about that when I got that
far).

Best,
Anton

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: GSoC: Bluetooth Replayer update
  2012-05-21 18:39 GSoC: Bluetooth Replayer update Anton Weber
@ 2012-05-22  2:00 ` Gustavo Padovan
  2012-07-02 15:32   ` Anton Weber
  0 siblings, 1 reply; 6+ messages in thread
From: Gustavo Padovan @ 2012-05-22  2:00 UTC (permalink / raw)
  To: Anton Weber; +Cc: linux-bluetooth

Hi Anton,

* Anton Weber <anton@antweb.me> [2012-05-21 19:39:49 +0100]:

> Hello everyone!
> 
> Now that the coding period for GSoC started, I will be regularly
> posting updates to the mailing list.
> This is meant to share my progress, but also to get get the community involved.
> If you have any feedback or suggestions, about the things I wrote or
> about my project in general, please let me know!
> As mentioned in my first email, you can always contact me directly via
> email or IRC as well.
> 
> To give everyone a better idea of what my project is about, I have
> uploaded the initial project proposal:
> http://antweb.me/tl_files/blog/gsoc12/gsoc_proposal.pdf
> I will do things slightly differently now that I have more of an idea
> what I'm dealing with, but the main structure should stay the same.
> 
> What happened so far:
> - read up on various guides and the Bluetooth specification
> - played around with git (will upload my work to github once I got
> that far and possibly fork the bluez repo at some point if required)
> - went through hcidump sources (found many bits of code I can reuse,
> especially the parser)
> - had a look at hciemu, but didn't get too far yet
> 
> Next up:
> - Find out more about hciemu
> - Getting used to automake
> - Write a tool that can execute a simple sequence of commands on a
> VHCI interface.
>   I will start off with a standalone tool for now, but it might be a
> good idea to integrate it in hcidump (more about that when I got that
> far).

Actually you should use btmon here, instead hcidump. btmon can log starting
from the time you plug the bluetooth dongle.
And we have btsnoop output there too, I think you can use it to extract the
data to replay.

	Gustavo

^ permalink raw reply	[flat|nested] 6+ messages in thread

* GSoC: Bluetooth Replayer update
  2012-05-22  2:00 ` Gustavo Padovan
@ 2012-07-02 15:32   ` Anton Weber
  2012-07-03  8:28     ` Gustavo Padovan
  0 siblings, 1 reply; 6+ messages in thread
From: Anton Weber @ 2012-07-02 15:32 UTC (permalink / raw)
  To: linux-bluetooth

Hi everyone,

it's been a while since my last update but I wanted to wait until I
have something to show and solve a few issues before I post here
again.
I made quite some progress during the past weeks and managed to get a
running version of my "hcireplay" tool.

Here's an overview of what it can do so far:
- replay of HCI commands, events and ACL data using VHCI
- dump file parser for BTSnoop format (taken from hcidump)
- timing functionality (delays using timestamps in the dump, modifier)
- packet dump output (using monitor code)

What I've also done in the meantime:
- set up a github repository for my work [1]
- set up a project page on my website [2]
- recorded a few dumps with btmon (thanks for the hint Gustavo)
- more background reading

Right now the tool does most of the things I planned. A good demo is
the "mouse-move" dump [3]
which replays the sequence of bringing the interface up, connecting a
Bluetooth mouse and moving it around.

If you want to give it a try, just grab the test dump and latest
source from github [1] and build it with "make hcireplay/hcireplay".
It would be great to get some feedback from the BlueZ community, since
you will be the one using this tool most!
(And I should slowly move to the bugfixing stage of my project).
As always, just to contact me directly if you have any questions that
are too specific for the mailing list!

One problem that I came across is that the host isn't always sending
the HCI commands to initialise
the newly connected controller in the same order. So hcireplay might
get stuck waiting for a particular
packet in the sequence. Anderson and I decided that the solution for
this problem for now would be
to process the less relevant part (in this case the init sequence) of
the dump separately instead of replaying it.

So I'll be looking at following things now:
- emulator integration
- configuration file support

For those who are reading about this project for the first time, I
linked to my previous post on my website [2] in the "GSoC" section.

Best,
Anton

[1] https://github.com/antweb/bluez-ant
[2] http://antweb.me/index.php/gsoc2012.html
[3] http://antweb.me/index.php/gsoc2012.html?file=tl_files/projects/hcireplay/mouse-move.btsnoop

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: GSoC: Bluetooth Replayer update
  2012-07-02 15:32   ` Anton Weber
@ 2012-07-03  8:28     ` Gustavo Padovan
  2012-07-04 13:28       ` Anton Weber
  0 siblings, 1 reply; 6+ messages in thread
From: Gustavo Padovan @ 2012-07-03  8:28 UTC (permalink / raw)
  To: Anton Weber; +Cc: linux-bluetooth

Hi Anton,

* Anton Weber <ant@antweb.me> [2012-07-02 16:32:23 +0100]:

> Hi everyone,
> 
> it's been a while since my last update but I wanted to wait until I
> have something to show and solve a few issues before I post here
> again.
> I made quite some progress during the past weeks and managed to get a
> running version of my "hcireplay" tool.
> 
> Here's an overview of what it can do so far:
> - replay of HCI commands, events and ACL data using VHCI
> - dump file parser for BTSnoop format (taken from hcidump)
> - timing functionality (delays using timestamps in the dump, modifier)
> - packet dump output (using monitor code)
> 
> What I've also done in the meantime:
> - set up a github repository for my work [1]
> - set up a project page on my website [2]
> - recorded a few dumps with btmon (thanks for the hint Gustavo)
> - more background reading
> 
> Right now the tool does most of the things I planned. A good demo is
> the "mouse-move" dump [3]
> which replays the sequence of bringing the interface up, connecting a
> Bluetooth mouse and moving it around.
> 
> If you want to give it a try, just grab the test dump and latest
> source from github [1] and build it with "make hcireplay/hcireplay".
> It would be great to get some feedback from the BlueZ community, since
> you will be the one using this tool most!

I didn't test your tool yet (once I do I'll have more feedback), but please
fold this tool under the tools/ folder.

	Gustavo

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: GSoC: Bluetooth Replayer update
  2012-07-03  8:28     ` Gustavo Padovan
@ 2012-07-04 13:28       ` Anton Weber
  2012-09-05 14:19         ` Anton Weber
  0 siblings, 1 reply; 6+ messages in thread
From: Anton Weber @ 2012-07-04 13:28 UTC (permalink / raw)
  To: Gustavo Padovan, linux-bluetooth

On 3 July 2012 09:28, Gustavo Padovan <gustavo@padovan.org> wrote:
> I didn't test your tool yet (once I do I'll have more feedback), but please
> fold this tool under the tools/ folder.

I'll put it on my todo list!

Anton

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: GSoC: Bluetooth Replayer update
  2012-07-04 13:28       ` Anton Weber
@ 2012-09-05 14:19         ` Anton Weber
  0 siblings, 0 replies; 6+ messages in thread
From: Anton Weber @ 2012-09-05 14:19 UTC (permalink / raw)
  To: linux-bluetooth

Hello everyone,

after last month's "pencils down" date, this will be my last project
update on the mailing list in this form.
Now that the deadlines have passed, my project is coming to an end, at
least within this year's Google Summer of Code.

But this doesn't mean that it's the last time I will work on it or
with BlueZ in general.
I have already submitted my Bluetooth Replayer utility to the mailing
list and updated the patch series today to include additional
documentation.

I am sure there is a lot of room to make the tool better and future
improvements will now depend on feedback from the BlueZ community.
To find out if the Bluetooth Replayer is in fact the useful debugging
tool I intended it to be, it is time to put it into practice and see
where to go on from here.
So please feel free to pull the patches off the mailing list (tagged
with 'replay') and give my work a try. You can find instructions on
how to use the tool in a quick tutorial or in the man page (both
included in the patches).

And of course everyone is very welcome to contribute himself. As
suggested by my mentor, one good idea for the future is to create a
small GUI that helps creating config files, a process which is rather
tedious at the moment.

If you have any questions, you can always contact me or my mentor
Anderson Lizardo directly.

Cheers,
Anton

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2012-09-05 14:19 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-05-21 18:39 GSoC: Bluetooth Replayer update Anton Weber
2012-05-22  2:00 ` Gustavo Padovan
2012-07-02 15:32   ` Anton Weber
2012-07-03  8:28     ` Gustavo Padovan
2012-07-04 13:28       ` Anton Weber
2012-09-05 14:19         ` Anton Weber

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.