LE Advertisement on data channels/ btvirt

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

 



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.

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






[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