[гайд] Разблокировка Bluetooth кодеков AAC, AptX на дешевых наушниках на базе чипов CSR | CSR8635, CSR8645



Реп: (22)
Навеяно темой Улучшение звука Bluetooth на наушниках без aptX и LDAC. Решил создать параллельный способ решения проблемы, но со стороны наушников. Сразу скажу способ чуть менее тривиальный, требует некоторых технических навыков, внимательности и оборудования. Ссылки на софт и сопутствующий материал я приложу в конце статьи.

Внимание: описанные ниже манипуляции Вы проводите на свой страх и риск, велик шанс окирпичить свои наушники. Одни из двух имеющихся у меня я по глупости окирпичил, как этого избежать я расскажу.

Так же общая рекомендация: старайтесь как можно меньше лапать чипы на плате наушников, особенно маленькую микросхему SPI FLASH памяти, которая очень боится статики как и любая память, по той же причине лучше предварительно облапать батарею дабы снять с себя заряд и не сидеть в синтетическом махровом халате, шерстяном свитере, а так же убрать подальше кошку.

Немного предистории.

Однажды я увидел недорогие блютуз наушники с неплохими характеристиками (20 часов прослушивания, блютуз 4.1 и неплохое звучание на мой не искушенный слух). Так я стал владельцем Sven B350MV, позже я их слегка разобрал ради интереса и посмотрел что там за чип, а так же бегло погуглил про него инфу, это был CSR8635, убедился что он поддерживает AAC, а не только стандартный SBC и успокоился. Еще позже я решил взять себе недорогие же блютуз затычки, и прослушал несколько вариантов за ту же цену взял наиболее понравившиеся по звуку Sven SEB-B265MV, к слову аккум у них очень дохлый, садится за 3-4 часа, заряжается за 5-10 минут(буквально). Далее чисто случайно на компьютере обнаружил что у меня обе пары наушников работают в SBC, хотя аппаратная поддержка ААС в чипе есть. Думал дело в компьютере, но распарсив дамп протокола блютуз во время handshake, когда устройства сообщает о себе инфу во время соединения и поддерживаемые протоколы, понял что наушники действительно умеют только SBC. Так и родилась идея поддержку AAC в них включить.

Итак, нам понадобится:

  • недорогой программатор на микросхеме FTDI FT232R/RL, подойдет китайский клон за 100руб
  • (опционально) преобразователь уровней, я использовал на микросхеме TXS0108E за 40руб
  • (опционально) резисторы (я использовал на 10кОм), если не используете преобразователь.
  • кастомный драйвер csr-spi-ftdi с гитхаба
  • официальный софт CSR (ныне квалком) для чипов
  • паяльник естественно
  • (опционально) немного МГТФ провода
  • (опционально) breadboard
  • и самое главное - НЕ спешить


Если вы увлекаетесь Arduino, то скорее всего все выше перечисленное у вас уже есть. В противном случае все можно заказать на Алике по ключевым словам FT232RL для программатора и TXS0108E для преобразователя уровней, либо в местных радио/ардуино магазинах, если не хотите ждать.

Кастомный драйвер можно скачать тут: https://github.com/lorf/csr-spi-ftdi/releases, там же есть подробная инструкция по установке и командам.

Что касается по драйверу, установка его заключается в подмене файла (библиотеки драйвера) в папке уже установленной программы BlueSuite (и других) и выглядит следующим образом:

  1. Установить BlueSuit или другой нужный софт
  2. Войти в папку установленной программы (например C:\Program Files (x86)\CSR\BlueSuite 2.6.0\) и сделать бекап(переименовать) файл usbspi.dll
  3. Скопировать скачанный файл из архива lib-win32/usbspi.dll в папку программы
  4. Скопировать кастомный usbspi.dll в папку программы
  5. Подключить программатор FR232 к компьютеру
  6. Скачать и запустить программу Zadig с http://zadig.akeo.ie/. В меню Options выбрать List all devices, выбрать "FT232R USB UART" или похожий, выбрать libusbK драйвер в окошке стрелочками вверх/вниз и нажать кнопку "Replace driver" или "Install driver". Это подменит драйвер FTDI программатора на совместимый с библиотекой libusb на который использует наш скачанный драйвер.

Немного картинок:
Прикрепленное изображение

Прикрепленное изображение

Прикрепленное изображение

Прикрепленное изображение



Все, можно запускать программы.


Далее железная часть.

Итак после чтения даташитов по CSR8635 (подозреваю и других) приятным сюрпризом было требование производителя распаивать и выводить пятки интерфейса SPI под дебаг/программатор и SVEN удивительно точно этому требованию следуют и даже подписывают назначение пинов, иначе я бы навряд ли решился на это, у меня совсем не руки хирурга. Так что наша задача тривиальна - подпаяться к этим площадкам:
Прикрепленное изображение
Прикрепленное изображение

Прикрепленное изображение
Прикрепленное изображение

Кстати слева, в B265 c МГТФ проводами, один провод припаян не правильно.


Далее нам надо подключить это все к программатору и тут есть несколько нюансов.
Во-первых: дело в том что наш программатор работает с уровнями логики 5в и 3.3в (устанавливается перемычкой), а наш чип с 1.8в, для этого нам и нужен двусторонний преобразования уровней, однако в даташите заявлена толерантность к максимальному напряжению 3.6в, следовательно вы можете на свой страх и риск выставить 3.3в на FTDI и подключить все через 10кОм резисторы. Судя по ветке переписки на гитхабе у людей все получилось успешно здесь и здесь.

Во-вторых: если у вас контрафактный чип RS232RL (как у меня именно они стоят в дешевых модулях, оригинальный стоит -6), то там пин DSR подписан как RSD.

Немного матчасти по пинам.
Непосредственно к протоколу SPI относится пина: MOSI/MO и MISO/MI для данных, CLK задает тактирование, CS/CSB - выбор чипа, т.к. позволяет подключать несколько slave чипов.
SPI_PCM(SPI/PCM) - нужен для перевода чипа в режим прошивки, для этого надо подать на него высокий уровень (подключить к питанию (+) через резистор)
GND - это земля (минус), она должна быть общей для наушников, программатора и преобразователя уровней (если есть).
Земля может быть не разведена на площадке, тогда ее стоит взять из usb гнезда зарядки, вся металлическая часть разъемов - это земля. Я же взял землю через платку питания макетной платы с USB к которой подключил наушники:
Прикрепленное изображение


Схема подключения выглядит следующим образом:
CSR8635 - FT232
GND - GND
SPI_PCM - через резистор 10кОм +1v8 или 3v3 на свой страх и риск
MOSI - RI#
MISO - DSR#
CLK - RTS#
CSB - DTR# (RSD#)


Здесь я добавлю схему подключения если вы используете преобразователь логических уровней как я и особенности подключения преобразователя на микросхеме TXS0108E (как у меня).
Общим для всех преобразователей является необходимым наличие нужных опорных напряжений с обоих сторон, чтобы преобразователь "понимал" с какого на какое напряжение производить преобразования сигналов. Так же есть требования по сторонам для высокого и низкого напряжений будь это простой транзисторный преобразователь или на базе микросхемы. Обычно эти пины подписаны как HV (high voltage или высокое напряжение) и LV (от low voltage или низкое напряжение) или LB и LA для моего преобразователя. Если у нас происходит преобразование с 5в на 1.8в соответственно +5В подключаем к HV и +1.8В к LV. Для TXS0108E это будет +5в на LB и 1.8в для LA. важно что VCCA ≤ VCCB, поесть напряжение на стороне А (L) должно быть меньше либо равно напряжения на стороне B (H). Так же для TXS0108E как следует из даташита нужно задать рабочий режим отдельным пином, подписанным OE (output-enable), для этого его необходимо подключить к выводу LA.

Итого: подключаем напряжение +3.3в или 5в (с преобразователем не принципиально) к LB. GND к соответственно GND на плате преобразователя и подключаете все остальные нужные выводы программатора со схемы выше к стороне B к пинам B1-B8 как удобно, я подключил по-порядку B1-B4 (cм. фото). Соответственно B1-Bx (H1-Hx) будут соответствовать выводам на другой стороне A1-Ax (L1-Lx). Пин OE подключаем к LA (у транзисторных его нет).

Далее нам необходимо задать опорное напряжения для стороны A(L). Если у вас не выведено 1v8 на площадку платы наушников можно сделать его самому через простой резисторный делитель. Самый простой вариант как сделал я - это взял 3.3в с платы программатора (пин подписан) и через делитель из двух 10кОм резисторов получил 3.3/2 = 1.65в, это меньше нужных 1.8в, но есть некоторых диапазон напряжений, которых достаточно и это не большая допустимая погрешность, подробнее можно посмотреть в даташите по CSR.
Делитель для /2 сделать просто, это два последовательно соединенных резистора одинакового номинала, один из которых соединен с + другой с – (GND), в точке соединения резисторов будет половинное напряжение источника:
Прикрепленное изображение
Важно использовать резисторы на большое сопротивление порядка килоом, иначе нагрузка на источник будет слишком большой, я использовал стандартные 10кОм.
Если хотите более точно подобрать напряжение - можно воспользоваться калькуляторами:
раз, два или генератором номиналов от TI.

После того как разберетесь с опорным напряжением соедините соответствующие выводы стороны А(L) с пинами наушников, НО предварительно желательно проверить все неоднократно и замерить напряжения мультиметром. Ни в коем случае на контроллер наушников не должно приходить напряжение выше 3.6В иначе он сразу же сгорит.


После того как все подключили и 10 раз перепроверили можно подключать программатор к компьютеру. Если у вас 1.8 вольт взято с платы наушников, их стоит предварительно включить иначе контроллер не подаст напряжение. Далее можно запустить PSTool из комплекта BlueSuite.

Софтовая часть и прошивка
Внимание: прежде чем вносить любые модификации в прошивку НАСТОЯТЕЛЬНО рекомендую внимательно прочитать этот раздел до конца и выделенные области, особенно раздел по порядку прошивки иначе гарантировано окирпичите устройство.

Так же работайте с программами осторожно, внимательно читайте меню, не совершайте лишних кликов, это сервисные утилиты, у них нет абсолютно никаких предупреждений перед действиями, перед записью и удалением настроек, программа не будет вас 10 раз спрашивать уверенны ли вы что хотите окирпичить устройство, а сделает это молча. Так же программы любят по долгу задумываться и казаться зависшими, винда неоднократно предложит закрыть их принудительно, но обычно это не так и в этот момент она может работать с флешем, поэтому не стоит прерывать их работу. Так же НЕ стоит переписывать весь флешь целиком, а менять настройки атомарно

Здесь расскажу как модифицировать прошивку с помощью официальных утилит, а так же порядок, т.к. одна из утилит окирпичивает устройство гарантированно, но без нее не обойтись.

Начнем с PSTool.
Запустите PSTool и если манипуляция с драйверами проведена успешно получите такое окно выбора интерфейса:
Прикрепленное изображение

Если при выборе SPI BCCMD справа в поле будет что-то типо "No FTDI device found" значит либо не подключен программатор либо что-то заменили не правильно. Так же автор драйвера говорит что с USB3 порой FTDI микросхема работает не стабильно, у меня в ноутбуке только USB 3.0, но все благополучно завелось. Вы же по возможности используйте USB2.

Если программатор определился верно - жмем ОК и должно появится окно с бегунком прогресс бара, программа скачивает конфиг нашего устройства:
Прикрепленное изображение

Если же на этом этапе возникла ошибка - это уже говорит о том, что что-то подключили не правильно, советую перепроверить всю схему подключения и замерить напряжения. Предварительно так же советую зарядить наушники, иногда проблема возникает из-за банальной нехватки по питанию, т.к. по нашей схеме подключения мы просто обеспечиваем сигналы, но не питание чипа. Еще раз советую проверить что земля (GND) соединена со всеми устройствами между собой (наушники — преобразователь — FTDI программатор).
Так же у меня не получалось установить связь с чипом на этом этапе из-за не правильной распайки, у меня (как видно на фотке) было 6 контактов, и на против CLK их было два, вначале я напаял на ближний и это после неоднократный попыток установить связь я решил открыть распаковку микросхемы и прозвонить все контакты, оказалось CLK - это дальняя площадка у края, после перепайки все заработало.


Если все прошло успешно вы увидите следующее окно:
Прикрепленное изображение

окно программы заполнится полями настроек, вручную там редактировать не удобно, все настройки представлены строками в 16-ричном формате, для этого воспользуемся другой утилитой, а пока мы сохраним дамп настроек. Для этого заходим в пункт File и выбираем Dump а так же имя место сохранениям дампа:
Прикрепленное изображение
Лучше делать это в мои документы во избежание проблем с правами админа и тд.
После этого опять появится ползунок неопределенного прогресса и прога надолго задумается, если попытаться кликнуть по ней то винда скажет что она не отвечает, не закрывайте ее, жмите "ожидание завершения"(или как там). Что прогресс идет можно убедится открыв этот файл в неблокирующем текстовом редакторе, например Sublime text и убедится что строчки добавляются в файл. Полный размер файла дампа занимает примерно 20-30кб и содержит около 800-900 строк. Как только программа закончит создавать дамп настроек, она никак не уведомит об этом, просто пропадет окно прогрессбара. Сделайте копию оригинального файла настроек и сохраните. С текущим мы будем работать.

Так же желательно сделать дамп EEPROM через консольные утилиты. Для этого открываем командную строку от админа: ПКМ по Пуск и выбираем Windows PowerShell(администратор):
Прикрепленное изображение


Далее переходим в папку с пакетом программ BlueSuite:
cd "C:\Program Files (x86)\CSR\BlueSuite 2.6.6"

Прикрепленное изображение

нам нужна утилита e2cmd.exe, запускаем следующую команду:
.\e2cmd.exe dump my_dump.hex

где my_dump.hex название файла дампа, который будет создан в этой же папке.
Есть так же консольная утилита pscli, которая повторяет функционал PSTool, например создать дамп настроем можно командой
.\pscli dump my_dump.psr




Теперь непосредственно отредактируем настройки прошивки и включим AAC.

Кратко алгоритм работы следующий:
  1. Сохраняем оригинальный конфиг в файл через Config Tool
  2. Скачиваем настройки из девайса в Config Tool
  3. Меняем нужные значения и сохраняем в ФАЙЛ
  4. Ищем измененные строки через Diff Tool
  5. Меняем эти строки через PSTool и сохраняем в устройство


А теперь подробно:

Далее очень внимательно, т.к. эта утилита окирпичивает девайсы. Нам нужна программа Config Tool. Эта программа предоставляет удобный человекопонятный интерфейс для настроек.
Запускаем программу, выглядит она так:
Прикрепленное изображение


По-умолчанию она загружает некий стандартный набор настроек из одного из конфигов в директории программы, чтобы загрузить настройки нашего девайса жмем Open From Device.

ВНИМАНИЕ: ни в коем случае, еще раз: ни в коем случае не жмите Write Device!! Именно эта кнопка окирпичит устройство молча и без предупреждения. Я бы предложил заклеить ее если б это было возможно.

После того как программа загрузит настройки нашего устройства интерфейс может слегка поменяется и отмеченные галочками пункты тоже. Например для моего устройства с CSR8635 пропадет поле A2DP AptX codec enable, т.к. этот чип не поддерживает его, а вот CSR8645 уже - да, оба чипа стоят одинаково, так что тут как повезет. Теперь не жмите никакие галочки, если нажали опять загрузите настройки с устройства (Open From Device). Нам нужен оригинальный конфиг. Тут ВНИМАТЕЛЬНО жмем Write PSR НЕ Write Device, а PSR, не перепутайте. Можете даже отключить от компа кабель программатора перед этим на всякий. Программа предложить выбрать имя файла, можно назвать, например orig_config, и место сохранения, сохраняйте в Мои Документы или папку программы, как удобно. Это буде оригинальный конфиг.

Теперь можно отметить нужные настройки.
Если у вас будет доступен Aptx можно активировать и его, это собственный кодек производства Cambridge Silicon Radio (CSR), но отличий от AAC в базе у него нет, интересны только профили Aptx HD и Aptx LL. Так же там есть A2DP FastStream codec - это вроде бы высококачественный голосовой кодек, я его не активировал, но можете попробовать.

Отмечаем нужный нам кодек(кодеки), в моем случае это AAC. И снова ВНИМАТЕЛЬНО жмем Write PSR НЕ Write Device, а PSR, не перепутайте. Программа снова предложит выбрать имя файла и место сохранения, можно назвать, например new_config.

Файлы PSR это текстовые файлы, которые содержат адрес ячейки памяти и ее значение в 16-ричном виде, перед каждой строкой так же есть комментарий с понятным названием настройки. Названия эти такие же как используются в PSTool. Т.к. сама программа Config Tool окирпичивает устройства мы не будем писать конфиг непосредственно через нее, а сделаем это через PSTool. Для этого нам надо найти строки что мы поменяли и заменить их значения на новые в PSTool. Нам понадобится diff tool, для этого идем на удобный сервис https://www.diffchecker.com/diff и в левое окно вводим содержимое файла оригинального конфига orig_config.psr (если не знаете чем открыть, то как я сказал это текстовый файл, открыть можно Sublime Text, Notepad++, либо Блокнотом), а в правое окно содержимое модифицированного конфига new_config.psr. И нажимаем зеленую кнопку Find Difference, промотайте текст, программа подсветит строки которые изменились, красным и зеленым, если изменилось несколько строк, справа на полях будут отметки на какой строке есть изменения:
Прикрепленное изображение


Теперь смотрим названия поля настройки, которое закомментировано двойным слешем, у меня это USR 15 - PSKEY_FEATURE_BLOCK как видно из скриншота.

Стоит заметить что навигация по PSTool медленная и порой кажется что программа виснет, на самом деле каждый раз как мы кликаем на поле настройки - она обращается к наушникам и считывает это поле из памяти, что приводит к некоторой "задумчивости".

Далее просто открываем PSTool, Config Tool можно уже закрыть, и ищем эту настройку. В поле Filter можно ввести название поля, название настроек может не совпадать буквально, например в PSTool она называется полным наименованием User configuration data 15
Прикрепленное изображение

Но из описания внизу понятно что это действительно то что мы ищем.
В правой части окна будет 16-ричная (hex) строка со старым значением, сравните его со значением из оригинального конфига, если все совпадает то меняем ее на строку со значением из нового конфига, сгенерированного Config Tool, после этого жмем кнопку Set внизу и значение запишется в память устройства. Вот так без полной перепрошивки, точечно меняем настройки. Проделываем это для всех измененных строк если они есть.

После этого жмем Reset BC или Reset & Close, чтобы перезагрузить процессор наушников. Отключаем USB программатора от компьютера и можем попробовать включить наушники и проверить изменения.

Я напаял разъемы на будущее если захочу снова поэкспериментировать с наушниками:
Прикрепленное изображение


Но если вам понравились эти модули, можно заказать на Али такой модуль на CSR8645 за 300руб и поэкспериментировать на нем. Например сделать блютуз колонки. А опыт перенести на свои наушники.

Не смотря на возможно объемный текст статьи сама процедура, при условии наличия всех нужных компонентов и софта, занимает не много времени, куда меньше чем то что я потратил на написание этой статьи, но требует внимательности.
Больше всего времени у меня занял поиск этих утилит. Раньше CSR свободно выкладывал их на своем сайте после простой регистрации, в последствии же после поглощения квалкомом все ссылки на софт убрали, сайт прикрыли, а регистрация требует документов партнерства и тд.

Как вы возможно заметили через Config Tool можно отредактировать очень многие параметры, можно переименовать девайс, можно так же изменить тональные сигналы при подключении и тд, а так же озвучку команд на китайском как на гарнитурах Xiaomi. Так же где-то там есть эквалайзер, он есть по даташитам, я видел темы где люди его настраивали, но я его не нашел. Схема будет та же.

Кстати из двух наушников SVEN у меня, одни я успешно окирпичил, которые затычки SEB-B265MV, как раз через прогу Config Tool. Так что можно считать они пали жертвой экспериментов, у них уже не работало одно ухо, так что не сильно расстроился, но все же жаль. После того как я уже успешно отработал схему и прошил другие уши, я вычитал на одном из зарубежных форумов об этой же проблеме от человека, который предлагал похожую схему работы с софтинами. Ссылки я приложу ниже. По сему просьба: те кто будет шить такие же уши (или похожие, но на том же чипе) просьба поделится EEPROM и PSR дампами. Возможно и другим будет полезно.

Сопутствующий материал и софт:
BlueSuite 2.6.6 на Mega: https://mega.nz/#!z8lnSCRb
Config Tool на Mega: https://mega.nz/#!Ok0VnCja
Драйвер 0.5.2 Release: https://github.com/lorf/csr-spi-ftdi/releases/download/0.5.2/csr-spi-ftdi-0.5.2.zip
Zadig 2.4: https://github.com/pbatard/libwdi/releases/download/b721/zadig-2.4.exe

Ссылка на папку со всем вместе на Mega: https://mega.nz/#F!n8tF0aib!gvv3CrvWiFYUWKQ_yHBEHw

Сообщение отредактировал hellvesper - 29.01.19, 04:07



Реп: (6)
Полезная тема!) В свое время искал подобное, но воспользовался инструкцией с гитхаба. Также у меня получилось включить зарядку непосредственно самим чипом (для CSR 8645) по USB, включить AptX и AptX LL, поменять имя устройства, включить опцию внешней звуковой карты (при подключении по USB).
Как я понял к платке можно подцепить ещё терморезистор, включить третий светодиод, добавить кнопки.
Может кто встречал полный мануал по программке "CSR 8600 ROM Series Configuration Tool" полный мануал. Я нашел только частично. Вот бы какой-нить добрый знающий чел выложил фотки интерфейса проги с подсказками к каждому пункту)))
ps: Модуль возможно реанимировать после прошивки через CSR 8600 ROM Series Configuration Tool

Сообщение отредактировал mairt - 28.02.19, 04:13



Реп: (5)
Всем доброго времени суток. Вставлю и свои 5 копеек. Успел я закирпичить чип до прочтения этой статьи, пока искал как на своих Acme BH40 на CSR8635 отключить голосовые подсказки(уж больно они противные). Метод раскирпичивания довольно прост..тут, как я понял, два пути. На всякий случай переподключаем SPI переходник и по-новой запускаем PSTool. Пробуем подключиться к наушникам и скорее всего получаем ошибку. Далее, нажимаем на кнопку Power на наушниках и сразу "повтор" в PSTool и видим успешное подключение, далее смотрим вкладку Factory и выбираем "Factory Restore All". Ждём несколько секунд и наши наушники возвращаются к исходному состоянию и скорее всего уже включатся кнопкой, а если же нет, то идём в File>Merge и выбираем наш дамп сделанный через pscli, размер которого около 30кб, этот процесс немного подольше. Я несколько раз проверил эти два метода и второй с некоторой попытки срабатывает. Первый практически 100%-ный. Пока не знаю откуда он берёт эти Factory значения, но это работает. Кстати голосовые подсказки я выключил, они находятся в PSKEY_USER9 в самом начале строки 0006 заменил на 0000



Реп: (22)
* Yorter,
Отлично, может быть это поможет мне оживить мои Свен-затычки, спасибо.



Реп: (0)
Хорошая статья, правда после этих манипуляций мой модуль CSR8635 перестает определяться :( , дамп сделал, поэтому всегда могу откатить, но хотелось бы внести некоторые изменения. При загрузке в Configtool определяет как CSR8633, при этом галочки MP3, ACC, APTX активны(в 35 aptx точно нет, уже выяснили). Имя устройства меняется без проблем, а вот с остальным беда, толи дело в программе, толи чип с причудами :russian_ru: Попробую все это проделать еще с CSR8645

Сообщение отредактировал dem952 - 20.03.19, 14:30



Реп: (1493)
Очень интересно.

А можно ли каким-либо образом определить чип (или хотя бы производителя чипа) наушников без вскрытия самих наушников?
Например, по MAC-адресу, или ещё по каким-то признакам которые можно получить не разбирая корпус устройства?

Спасибо.



Реп: (10)
Спасибо за интересную тему!
У меня такой вопрос, есть наушники (Sennheiser CX6.00BT), но на их плате нет пяточков, куда можно было подключиться, хотя они построены на чипе CSR. При подключении к компьютеру, win 10 издаёт звук, но не определяет устройство. Следовательно, наушники не только питание по usb могут брать, есть ли какие-то варианты в таком случае?

И ещё, немного нестандартный вопрос
Если поменять имя наушников на условное "WF-1000X", будет ли приложение Sony Headphones Connect их видеть? В таком случае, можно было бы менять, допустим, настройки эквалайзера :D



Реп: (22)
GrayValenok @ 10.04.19, 18:04 *
Следовательно, наушники не только питание по usb могут брать, есть ли какие-то варианты в таком случае?


По даташитам чип умеет работать с USB, но все модификации прошивки инструментами CSR/Qualcomm в основном по SPI. Есть даже в софте опция работы через непосредственно блютуз, но не понятно как с ним работать, по-умолчанию они не умеют.

GrayValenok @ 10.04.19, 18:04 *
И ещё, немного нестандартный вопрос
Если поменять имя наушников на условное "WF-1000X", будет ли приложение Sony Headphones Connect их видеть? В таком случае, можно было бы менять, допустим, настройки эквалайзера


Без понятния, CSR предоставляют SDK и софт для производителей, они вполне могут модифицировать прошивки, это практически никто не делает кроме стандартных настроек эквалайзера активирования/деактивирования прочих опций/кодеков И так далее, но может здесь именно тот случай.



Реп: (10)
hellvesper @ 16.04.19, 17:12 *
Есть даже в софте опция работы через непосредственно блютуз

Как выяснилось, можно заливать файл прошивки через bluetooth, для этого используется программа Gaia control - она есть и на IOS и на Android. Проблема в том, что её достаточно трудно найти в открытом доступе, но можно :rolleyes:
Я нашел 2 версии: для тестирования и для самой настройки и заливки прошивки. Почему-то, в них нет опции загрузки файла прошивки (но в инструкции к программе эта опция есть).
hellvesper @ 16.04.19, 17:12 *
В таком случае, можно было бы менять, допустим, настройки эквалайзера

Как выяснилось, в этих программах можно менять настройки эквалайзера (но эквалайзер какой-то супер мудрёный), можно выключить светодиоды и все системные звуки полностью. Все настройки сохраняются в памяти наушников, (более того, если они поддерживают одновременную работу с 2 устройствами, то можно воспроизводить звук с одного устройства, а настраивать с другого).

Это всё, конечно, уже выходит за рамки этой темы, но может быть кому-то пригодится.

Прикрепленные изображения
Прикрепленное изображение
Прикрепленное изображение
Прикрепленное изображение
Прикрепленное изображение
Прикрепленное изображение
Прикрепленное изображение



Реп: (678)
GrayValenok @ 05.05.19, 21:36 *
Проблема в том, что её достаточно трудно найти в открытом доступе, но можно

А поделиться тут можно? Очень интересует!
Я у китайцев что-то умудрился скачать, но оно не видит моих наушников (на CSR8645), вдруг есть какая-то другая версия.



Реп: (0)
ImmortAlex @ 13.05.19, 13:22 *
Gaia control

Эм.. может я чего не понимаю.. Но первая ссылка в поиске, читаем текст, автор даёт ссылку в облако https://yadi.sk/d/kpHT6ziZ3Rdxbt
2 минуты с момента прочтения и прога установлена на телефон.
Функция прошивки есть, нужно закинуть её в папку программы.
В остальном ничего интересного.
На всякий случай прикрепил к сообщению.

Прикрепленные файлы

Прикрепленный файлCSR GAIA Control.apk ( 2.7 МБ )



Реп: (678)
* DarkEol, да теперь проблема в другом: оно не стало цепляться к моим ушам, ни в какую...



Реп: (0)
спасибо за подробную инструкцию. А можно CSR8635 45 75 настроить как передатчик? один оставить приемником, а другой передатчик. я имею ввиду модули с этой микросхемой

Сообщение отредактировал tolegs - 30.05.19, 07:08



Реп: (0)
Пытаюсь разобрать как установить ПИН код на соединение.
У меня модуль CSR8675
Интуитивно думаю это :
// PSKEY_FIXED_PIN
&035b = 0030 0030 0030 0030
The fixed PIN assigned to the local device. This must have a length
greater than zero (and less than 17).
Но по логике не сходится.

Нет ли у кого документации по настройкам?

Config Tool CSR8600 ROM series(3.0.64) - не работает с CSR8675



Реп: (0)
Купил на алиэкпрессе модуль BTM835 c чипом csr8635. Никак не могу сконнектиться в модулем. PSTool пишет проверьте spi кабель, подайте питание на модуль или установите корректный драйвер. GAIA control пишет, что либо устройство не поддерживает либо оно уже подключено.
Подскажите в каком направлении двинуться?



Реп: (22)
alexey81537 @ 05.06.19, 19:40 *
PSTool пишет проверьте spi кабель, подайте питание на модуль или установите корректный драйвер.


Как подключали?



Реп: (22)
Если кто знает как связаться с модератором — напишите. Надо отредактировать пост.
Тут небольшая ошибка на карте, RSD в китайских FTDI не DTR, а DSR, впрочем вы должны были заметить, по тексту указано правильно

не правильная карта:
CSR8635 - FT232
GND - GND
SPI_PCM - через резистор 10кОм +1v8 или 3v3 на свой страх и риск
MOSI - RI#
MISO - DSR#
CLK - RTS#
CSB - DTR# (RSD#)


правильная:
CSR8635 - FT232
GND - GND
SPI_PCM - через резистор 10кОм +1v8 или 3v3 на свой страх и риск
MOSI - RI#
MISO - DSR# (RSD#)
CLK - RTS#
CSB - DTR#



Реп: (0)
Сделаю более наглядно, для понимания.
Питание не подключаем, используем родное.
Фото:
Прикрепленное изображение



Реп: (0)
Подключал как на картинке через 10к естественно. У меня ХР на компьютере, поэтому пользовался Zadig_xp-2.2. Все драйвера на "прошивальщик" устанавливались нормально.
Прикрепленное изображение



Реп: (0)
Так если уровни 1.8V. резисторы можно убрать. Можно так попробовать


Полная версия   Текстовая версия

Помощь   Правила

Сейчас: 30.05.24, 18:25