For a work project, I have a list of bluetooth mac with their appearance and disapearance times from a moving sensor. I would like to filter theses MAC adresses and to know if they are following my sensor.
First, I'm getting the duration of each mac detection to know if they are alongside the device for a long time enough. But it's not enough for the model I'm building.
I know that bt mac adresses are randomly changed as times goes by. So I also get the information if the MAC adress is in the OUI list. But a few number of them are in the OUI list.
So my question is : Can I know, by a different method, if the MAC seems to match a real device like a headphone, a mobile phone or a smart watch for example ?
You cannot use the MAC address specifically to tell you what type the device is. Apart from having no way to find the real address (if the device uses LE privacy), there's no association between the MAC address and the device type.
Some devices include the "Appearance" as part of the BLE advert. This field reflects the type of device to be one of the values in this document:-
Appearance Values Bluetooth Document
However, many devices choose to ignore this field in their advert, so you won't get 100% coverage. You can try this in your application and if a device doesn't include this field, you can deem it as "unknown". More information on the Appearance field can be found here:-