Товары из Китая

OneOdio Elysium добавляем кодек AAC


OneOdio Elysium добавляем кодек AAC

В общем это моя первая статья, да и не писатель я 🙂 Так что не буду ходить вокруг да около, а перейду к делу.

Купив полгода назад наушники OneOdio Elysium с одной небезызвестной площадки, сразу же захотел как то улучшить их звучание по BT, по проводу они отрабатывают свои рубли(юани) на 100%, а вот по синему зубу играют мягко говоря не очень. А все из-за того что хитрые китайцы решили в данной модели не включать кодек AAC(типа поют же на SBC). Ну ничего мы это поправим 🙂

«Все делается на свой страх и риск, автор ответственности за испорченную технику не несет»

Для начала разбираем наушники, а именно ухо с управлением, так как именно там находиться основная плата, а во втором наушнике лежит аккумулятор, видимо это сделано для более менее верной развесовки наушников.

Внутренности
OneOdio Elysium добавляем кодек AAC

Наушники собраны на довольно редкой в наших краях микросхеме Bluetooth 5.0 фирмы Microchip IS2020S, тем не менее микросхема поддерживает кодеки SBC/AAC_LC, а так же менее интересный mSBC, плюс Microchip в отличие от Qualcomm не прячет информацию и программы для программирования данных микросхем. Данные под катом:

Ссылки на даташиты и софт
www.microchip.com/wwwproducts/en/IS2020

ww1.microchip.com/downloads/en/DeviceDoc/IS202x_StereoAudio_DataSheet.pdf

ww1.microchip.com/downloads/en/DeviceDoc/IS2020_203_Tools.zip

Единственное, но данный софт рассчитан на работу с их собственной микросхемой USB — UART mcp2200, но софт нам понадобиться лишь косвенно.

Для начала пришлось просмотреть даташит, оказывается их микросхема построена на база старенькой 8051 и не имеет собственной EEPROM поэтому Microchip предлагает хранить все настройки данной микросхемы в отдельной EEPROM, распаянной тут же неподалеку. Микросхема EEPROM самая простенькая 24С32 с классическим I2C интерфейсом. Так что программатор подойдёт абсолютно любой хоть народный CH341, хоть не менее народная Arduino, я же пользуюсь самодельным «Postal 3» , единственно требуются уровни равные 3.3в. Для начала был снят дамп памяти EEPROM, для его изучения и попытки скормить его софту от Microchip.

Оригинальный дамп
yadi.sk/d/0Kgt5qVpZdsOdg

Увы попытка скормить софту была неудачной, MPET вывалился с ошибкой format unknown:

MPET
OneOdio Elysium добавляем кодек AAC

Далее при сравнении оригинальной таблицы характеристик «IS2020SUI_DEFAULT_TABLE» и дампа EEPROM было обнаружено сходство структуры данных.

Сравнение таблицы и дампа
OneOdio Elysium добавляем кодек AAC

В итоге собрав я собрал свою таблицу настроек IS2020S, и вполне удачно скормил редактору параметров, из пакета разработчика.

Редактор параметров
OneOdio Elysium добавляем кодек AACOneOdio Elysium добавляем кодек AACOneOdio Elysium добавляем кодек AAC

Вот и найден не включенный кодек 🙂 ставим галочку, сохраняем таблицу и переносим, изменения в оригинальный дамп EEPROM, я для этих целей использовал WinHEX, сохраняем отредактированный дамп, подключаем программатор к микросхеме EEPROM и закачиваем новую прошивку с поддержкой ААС. Подключаемся на телефоне к гарнитуре и видим что кодек AAC в работе.

На телефоне
OneOdio Elysium добавляем кодек AAC

Данный способ позволяет не только включить недостающий кодек, можно поменять назначения кнопок, режим работы светодиодов, отсечку по напряжению на акб и т.д. Ну а на по следок для тех кто осилил данную статью :), но не хочет забивать себе голову, готовая прошивка с включенным AAC и таблица параметров (для собственноручного изготовления прошивки, в таблице строки 0800 и 0810 это CRC их в дамп вставлять не нужно)

Прошивка и таблица
прошивка

таблица

P.S: Есть вероятность что наушники Remax 200HB имеют идентичное строение, так как OneOdio Elysium внешне клон Remax, но платы Remax 200HB я не видел так что утверждать что прошивка заработает на них не могу, кому надо тот разберет и посмотрит, совпадает ли железная база данных наушников.


СМОТРИ ТАКЖЕ

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *