Доброго всем дня.
Начну с сути проблемы.
Имеется авто, в котором используется несколько каналов: AUX, CD и Radio. Выбор канала осуществляется на головном устройстве автомобиля. Выбранный канал выводится через усилитель на аудиосистему автомобиля.
Имеется дополнительное устройство Android - которое мы включили в канал AUX. По причине отсутствия CAN в устройстве Android, о том, какой канал выбран на головном устройстве сам Android не знает.
Далее, на самом деле, устройство Android имеет два канала вывода:
1. Стандартный канал вывода AUX - отметим его как AUX1, в который Android транслирует всё, кроме голосовых вызовов.
2. Резервный дополнительный динамик, который Android использует для громкой связи - отметим его как TEL.
То есть, алгоритм в данном случае такой: весь звук транслируется в канал AUX кроме звука телефонных вызовов. При поступлении телефонного вызова, канал AUX блокируется, а звук направляется на резервный динамик.
Логика этого, в принципе, понятна: поскольку Android не знает, какой канал выбран на головном устройстве, нужно, а задача стоит такая, чтобы звук вызова телефонной связи, перенаправленного по BT на Android, транслировался всегда, его направляют на этот резервный динамик.
Вопрос вот в чем: можно ли поставить на канале AUX что-то вроде шлюза, на который будет работать по следующему алгоритму:
1. Во первых, тем или иным способом определить статус канала AUX относительно головного устройства. Ну, не знаю, сопротивление там как-то замерить, или падение напряжения, или силу тока.
2. На шлюз приходят обе линии с Android: собственно AUX1, и TEL.
3. Если мы определяем статус AUX относительно головного устройства, как активный, то благополучно направляем туда звуковой поток с Android, независимо от того, что это, AUX1 или TEL.
4. Если мы определяем статус AUX на головном устройстве как НЕ активный, то в случае появления сигнала на линии TEL, этот сигнал направляется на резервный динамик.
Спасибо за то, что прочитали и взялись осмыслить этот сумбур.