Адаптеры OBD2 BLE не используют фиксированные профили GATT. Большинство (если не все) адаптеры BLE OBD2 работают так, что они предлагают одну услугу с одной или двумя характеристиками:
- A запись характеристика. Это то место, где мобильное устройство может записывать свои AT-команды (в случае, например, ELM327) и PID в.
- A уведомить характеристика. Это тот, где результаты от автомобиля (ECU) возвращаются.
Получив доступ к этим характеристикам, вы можете реализовать последовательный протокол OBD2 (например, используя очередь команд, которая записывает и ожидает ответа, прежде чем передать готовую команду на прикладной уровень).
Некоторые адаптеры BLE объединяют эти два в одну характеристику. Если вы хотите поддерживать произвольные адаптеры, вам нужно будет добавить экран «выберите свой адаптер», где вы будете проверять найденные адаптеры, запоминать характеристики и затем общаться.
Таким образом, можно писать приложения, которые работают со всеми видами адаптеров BLE OBD2 и не только поддерживают выбранную группу поставщиков, например, таких как OBD2 Expert (Отказ от ответственности: я автор этого программного обеспечения).
Надеюсь, это поможет!