Hello,
I am a detective and my agency has started deploying drones in search and rescue/recovery situations. I am exploring the feasibility of utilizing a BTLE scanner mounted on a drone to receive beacons and signal strength from devices that have no business being there, such as in the middle of a forest, nature preserve, extremely rough terrain, near rivers, lakes, etc. There is currently no products I am aware of for purchase that would have this capability. My idea is to maybe have a raspberry pi or device programmed to scan for BTLE with patch or other type of directional antenna facing downward, then create a mapping mission in the drone software to systematically cover a given area looking for key tags, and IOT devices that may be on the victim’s person.
Is this a feasible task and how complicated would it be? I have very little programming experience but could seek help from others in my department if needed. Any input is appreciated. Thanks!
Hey there,
Take a look at this project:
The code in the beacon service should get you going. Let me know if you and your colleagues need more help.
Phil
@justin - did you get anywhere with this over the last couple of years? Im looking at something similar
I’ll extend my offer my help to you too @dag
I did and was somewhat successful, however the drone itself utilized a rolling blue tooth identifier, so my efforts were futile
I realize this is a very old post, but I don’t think the rolling identifier problem should be a fatal issue for this scope if the people who want to implement it are prepared to put in a bit of testing work and can find someone to modify the existing available code to meet their needs.
The link proved in @phil-d-wilson‘s message from June 2022 doesn’t work any more, but I think the project he was referring to then is this one:
with source code here:
The documentation of that project shows that it already contains code which allows it to filter for devices which exceed a given signal strength, so it shouldn’t be too hard to extend it to filter out the rolling identifiers coming off the drone - presumably these would have a consistent, high RSSI, so either using a threshold to exclude these detections or looking for identifiers for which the RSSI varies between readings shouldn’t be an excessive load.
The existing code might also need to be modified to remove the dependency on the InfluxDB service. This would probably be necessary if the drone needs to fly beyond the wifi range of the RPi, and it would probably also be necessary for the RPi to capture GPS location in real time so that detection data can be offloaded and matched to position when the device returns to base (or at least within the wifi range of the Pi).
I don’t own any drones and have no interest in looking at them, but I’d be happy to take a look at adding a feature to the BalenaHub project to find a way of filtering the rolling identifiers out (either using an RSSI threshold to exclude over-strong signals or by seeing whether the BLE advertising data which should accompany the rolling id can be accessed as this should contain consistent manufacturer data which can be used to achieve the necessary filtering).