Re: LE Advertisement on data channels/ btvirt

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Marvin,

On Fri, Nov 18, 2022 at 8:24 AM Marvin Sinnwell <msinnwel@xxxxxxxxxxxxxx> wrote:
>
> Hello everyone,
>
> TL;DR: Seeking advice on advertising on arbitrary channels + usage of
> btvirt specifically function "send_adv_pkt".
>
> I am currently working on my bachelor thesis and have the following
> problem with I would like to request some advice:
>
> I want to test several algorithms that try to improve the time it takes
> to find an advertisement packet of another device. For this I not only
> want to change the method of advertising, on channels 37-39 in
> sequential order, to something else, but also send advertisement packets
> on other channels.
>
> My main difficulty currently is composed of trying to find out where the
> actual advertisement packets are sent. Currently my best guess is, that
> is is controlled by the firmware of my raspberry pi that I am using
> (specific model below), because I could not find anything within the
> bluez stack. Maybe one of you has more knowledge on where I have to search.
>
> What I was able to find was the btvirt tool, which could help with my
> problem. There I found in the file "le.c" in function
> "adv_timeout_callback" another function called "send_adv_pkt". Sadly
> while trying out btvirt and clever usage of some print statements I
> could not see the function be executed. Maybe someone can give me some
> advice on that, because this function should do exactly what I am
> looking for. It could be that I was just using the tool incorrectly in
> which case it would be great if somebody could tell me how to use it. My
> methodology was: 1. "sudo ./btvirt -L -l2 -d" to create 2 new local LE
> controller. 2. Start advertisement using hcitool "sudo hcitool -i hci2
> cmd 0x08 0x000a 01". The advertisement is correct and the other local
> controller can connect to the first one.

I don't think vhci will help you given it only emulates HCI layer and
the channels are actually controlled by the so called Link Layer which
happens to be under HCI, you might have control over the Link Layer
using Zephyr though.

> My current equipment is:
>
> Device:                Raspberry Pi 3 Model B+
>
> Kernel + OS:       Linux raspberrypi 5.15.61-v7+ #1579 SMP Fri Aug 26
> 11:10:59 BST 2022 armv7l GNU/Linux
>
> Bluez version:     5.65
>
>
> Kind regards
>
> Marvin Sinnwell
>
>
>


-- 
Luiz Augusto von Dentz



[Index of Archives]     [Bluez Devel]     [Linux Wireless Networking]     [Linux Wireless Personal Area Networking]     [Linux ATH6KL]     [Linux USB Devel]     [Linux Media Drivers]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux