Подключить android приложение к автомобильной can-шине через wi-fi

Цена договорная
24 февраля 2021, 16:30 • 2 отклика • 37 просмотров
Есть проект: приложение + девайс. Назначение - тренировка гонщиков.

Видео-демонстрация здесь
https://youtu.be/LRf5fNI05b0

Используется так:
Приложение через внешний wi-fi датчик, подключенный к автомобилю, получает от автомобиля данные угла поворота руля.
На экран приложения выводится изображение руля, который двигается синхронно с реальным рулем в автомобиле. В центре руля отображается степень крутизны поворота, которую можно изменить в настройках. Также, на экране есть указатель текущей скорости (определеяется по GPS) и счетчик пройденного расстояния (сбрасывается на 0 при нажатии на экран)

Использование приложения такое:
Перед тренировкой, в автомобиль, на обычный держатель для телефона ставится телефон с приложением.
Внутри салона между сиденьями стоит видеокамера. В поле зрения камеры попадает дорога, а также руки гонщика и смартфон.
Пилот едет, и не глядя на экран телефона, называет крутизну поворотов на незнакомой дороге, по своим ощущениям (правый 3 и т.п.)
После тренировки, инструктор с пилотом просматривают видео, и проверяют насколько близко к значениям зафиксированным в смартфоне, пилот называл крутизну поворотов.

Что есть сейчас:
Cейчас телефон получает данные угла руля от нашего самодельного прибора, который сделан на базе процессора stm32 и подключается в диагностический разъем автомобиля. Прошивка прибора написалана С++. Прибор сам опрашивает КАН-шину автомобиля, получает там нужные нам данные, оформляет их в нужный протокол и шлет в смартфон. Подключение к смартфону выполняется по вайфай, по порту и айпи. Кан-шина у разных моделей автомобилей устроена по-разному, и нужные нам данные находятся в разных местах.
Сейчас мы умеем получать данные у автомобилей VAG платформа MQB (шкода октавия, фольксвагены тигуан / транспортер и т.п.) и BMW 1-series

Нужно сделать:
Нужно заменить наш девайс фабричным устройством ELM327 wi-fi
При этом логику опроса кан-шины нужно реализовать в андроид приложении, чтобы устройство ЕЛМ327 было только интерфейсом между приложением и кан-шиной. Прошивку ЕЛМ нужно оставить нетронутой, фабричной.
Нужно настроить подключение приложения к автомобилю через ELM-327 и сделать в приложении переключение пресетов (настроек опроса кан-шины) для наиболее популярных автомобилей.
Начать можно с имеющихся прошивок от нашего текущего устройства (они написаны на С++) и оттуда извлечь место, куда наш текущий девайс обращается в кан-шине за данными.

Видео демонстрацию приложения + более подробную инфу пришлю при личном общении. TG @skyranger