• Внешний USB-ЦАП-Аудиопроцессор CDD-010 можно купить

Reflex USB транспорт

Евгений

Administrator
Команда форума
Что вы имеете в виду? как я понимаю любой 24-битный режим такой и есть.
Для 24 и 32 бит, да. Но если будет 16-битный поток при работе с процессорами ADAUxxxx нужно выбирать на Reflex режим с постоянным соотношением BCLK/LR = 64. Подробнее в описании модуля, раздел "Выбор соотношения BCLK/Fs".

По вопросу с ASRC. Если Reflex работает без использования ASRC в любом режиме (мастер/слейв), - а он, несомненно, работает - то дело может быть только в настройках DSP.

Интересно, что если подключить Reflex(master) напрямую к SSM3582 то треска не заметно, но если провода чуть более длинные использовать - он появляется.
Никогда никакого треска не замечал, длина проводов (специально измерил) - 32 см. Но, конечно, чем короче, тем лучше.
 

xkir

Well-known member
дело может быть только в настройках DSP.
Ну, как я писал выше, с точно теми же настройками serial-порта 1467 никаких проблем не было с Raspberry (volumio с выходом "generic i2s" который есть мастер).
В общем, непонятно.
В любом случае, спасибо за ответы. Будет время - помучу Reflex еще, с осциллографом, конденсаторы попробую повесить.
 

Евгений

Administrator
Команда форума
Ну, как я писал выше, с точно теми же настройками serial-порта 1467 никаких проблем не было с Raspberry (volumio с выходом "generic i2s" который есть мастер).
Частота / разрядность потока одинаковые в обоих случаях?

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

xkir

Well-known member
Да я уже пробовал с ASRC и без. Одинаково - если частоты совпадают(рефлекса и DSP). ASRC ведь реально нужен если частоты разные.
Возможно проблема еще в помехах по usb-кабелю, буду продолжать попытки.
 

Евгений

Administrator
Команда форума
Да я уже пробовал с ASRC и без. Одинаково - если частоты совпадают(рефлекса и DSP). ASRC ведь реально нужен если частоты разные.
Я имел ввиду выходные потоки с Reflex и Raspberry. Они в экспериментах одинаковые? В случае с Raspberry все выходные потоки пропускаются через ASRC корректно?
 

Евгений

Administrator
Команда форума
Да, с Raspberry тоже одинаково было что с ASRC что без, и треска не было. частота была 96к в Volumio и DSP.
Подождите, что-то я запутался. Поправьте, если я неправильно понял.
1) Частота потока 96 кГц, Reflex мастер подключен к ADAU1467 слейв без ASRC - проигрывает корректно.
2) Частота потока 96 кГц, Reflex мастер подключен к ADAU1467 слейв через ASRC - проигрывает с треском.
3) Частота потока 96 кГц, Raspberry мастер подключен к ADAU1467 слейв без ASRC - проигрывает корректно.
4) Частота потока 96 кГц, Raspberry мастер подключен к ADAU1467 слейв через ASRC - проигрывает корректно.
 

xkir

Well-known member
Скорее так:
1) Частота потока 96 кГц, Reflex слейв подключен к ADAU1467 мастер без ASRC - проигрывает корректно.
2) Частота потока 96 кГц, Reflex мастер подключен к ADAU1467 слейв через ASRC или без - проигрывает с треском.
3) Частота потока 96 кГц, Raspberry/Volumio слейв (ваш I2S драйвер от ADAU1701) подключен к ADAU1467 мастер без ASRC - проигрывает корректно.
4) Частота потока 96 кГц, Raspberry/Volumio мастер (драйвер "Generic I2S") подключен к ADAU1467 слейв с ASRC или без - проигрывает корректно.
 

Евгений

Administrator
Команда форума
2) Частота потока 96 кГц, Reflex мастер подключен к ADAU1467 слейв через ASRC или без - проигрывает с треском.
Когда у ADAU1467-слейв неактивен ASRC, ADAU1467 должен тактироваться от Reflex. Подключите к ADAU1467 от Reflex сигнал MCLK, а встроенный кварц отключите. Настройки ADAU1467 нужно делать относительно сигнала MCLK Reflex. Тогда треск пропадет. Иначе модули рассинхронизированы.
Если ADAU1467-слейв, Reflex - мастер, ADAU1467 тактируется от своего кварца (сигнал MCLK Reflex не используется), нужно использовать ASRC, здесь нужно разбираться в настройках.

4) Частота потока 96 кГц, Raspberry/Volumio мастер (драйвер "Generic I2S") подключен к ADAU1467 слейв с ASRC или без - проигрывает корректно.
Вот это странно: в случае "Частота потока 96 кГц, Raspberry/Volumio мастер (драйвер "Generic I2S") подключен к ADAU1467 слейв без ASRC" должен наблюдаться треск, т.к. потоки рассинхронизированы, нужно разбираться в настройках.
 

xkir

Well-known member
ADAU1467 должен тактироваться от Reflex
Попробую и так (чисто ради эксперимента), но такой режим мне не подходит. Я выше писал что пробовал вариант с тактированием рефлекса от клока ADAU, на вход EXT CLK, безуспешно.

Когда у ADAU1467-слейв неактивен ASRC
не видел такого требования в спецификации 1467, да и с виду ASRC вполне работает в случае с raspberry, я менял частоты выхода (сменой частоты ресемплирования в Volumio), ASRC подстраивается (это видно на закладке ASRC)
на входе SPDIF ASRC также работает успешно.

На всякий случай приложил проект сигмастудио на котором я тестировал. режимы slave/master для BCLK/LRCLK переключал на табе "serial ports" вручную.
 

Вложения

Евгений

Administrator
Команда форума
Попробую и так (чисто ради эксперимента), но такой режим мне не подходит.
Когда у ADAU1467-слейв неактивен ASRC, ADAU1467 должен тактироваться от Reflex - это единственно верное подключение.

Я выше писал что пробовал вариант с тактированием рефлекса от клока ADAU, на вход EXT CLK, безуспешно.
Насколько помню, ADAU не выдает таких частот. Reflex в качестве EXT CLK нужен сигнал равный 256*Fs: 12,288 МГц для 48 кГц, 24,576 МГц для 96 кГц и 49,152 МГц для 192 кГц; аналогично для частот, кратных 44,1 кГц.

не видел такого требования в спецификации 1467
Я писал "Когда у ADAU1467-слейв неактивен ASRC ". Вы отвечаете, когда ASRC активен.
 

xkir

Well-known member
тактироваться от Reflex - единственно верное подключение.
Значит, не судьба сделать как я хотел. Однако с Raspberry почему то работало, может у них тактовые частоты более точно совпадают.

ADAU не выдает таких частот.
выдает 24,576 МГц на выходе MCLK, если включить это в настройках ADAU (Clocking/Mclk OUT/BaseFs*512). но тема о рефлексе :)
 

Евгений

Administrator
Команда форума
Значит, не судьба сделать как я хотел.
Вы обрываете фразы. Это относится только к тому случаю, к которому эта фраза прикреплена.

Однако с Raspberry почему то работало, может у них тактовые частоты более точно совпадают.
Убежден, что у вас наложились и перемешались эксперименты. В данном случае точность тактовых частот не важна, у Reflex она очень высокая.

выдает 24,576 МГц на выходе MCLK, если включить это в настройках ADAU (Clocking/Mclk OUT/BaseFs*512). но тема о рефлексе
Тогда не понятно, что у вас не работает в случае с EXT CLK. Подайте на EXT CLK 24,576 МГц с ADAU, выберите на Reflex перемычкой соответствующий режим, можно будет проигрывать поток 96 кГц (только такой).
 

xkir

Well-known member
Подайте на EXT CLK 24,576 МГц с ADAU, выберите на Reflex перемычкой соответствующий режим, можно будет проигрывать поток 96 кГц (только такой).
Сделал как вы сказали, и да, после того как все соединил EXT CLK парными проводами (земля и сигнал 24,576 ), на рефлексе перемычка на 10, пошел почти чистый звук. "почти" потому что пару раз щелчки таки слышал, но это можно списать на монтаж "на картонке".

Посмотрел еще осциллограммы, и то что я вижу как то не соответствует тому что приведено в спецификации на ADAU1467. Явно не та полярность BCLK (или я что-то не понимаю). Причем, эта картина во всех режимах (master и slave), и переключение полярности в ADAU с виду ничего не меняет. А как должно быть? Привел одну из фото с осциллографа (сверзу BCLK внизу DATA).
Присоединяюсь к предыдущему пожеланию добавить джампер чтобы менять полярность BCLK.

По поводу точности частот, что говорит частотомер осциллографа (не особо точный, но тем не менее):
ADAU как мастер выдает LR 95.940k
Рефлекс как мастер выдает LR 95.980k
Разница небольшая, но видимо ее достаточно для несинхронности. Raspberry не мерил, сейчас нет под рукой.

---
Дополнение:
прошил рефлекс прошивкой REFLEX_v1.5_Slave_BCLK_INV.dfu, осциллограма стала "правильной". Пока оставлю так, посмотрим.
 

Вложения

Последнее редактирование:

Евгений

Administrator
Команда форума
пошел почти чистый звук. "почти" потому что пару раз щелчки таки слышал, но это можно списать на монтаж "на картонке".
Да, тактирующие сигналы очень "капризные". Если провода потрясти, например, треск будет. В идеале они должны быть жестко зафиксированы.

Посмотрел еще осциллограммы, и то что я вижу как то не соответствует тому что приведено в спецификации на ADAU1467. Явно не та полярность BCLK (или я что-то не понимаю). Причем, эта картина во всех режимах (master и slave), и переключение полярности в ADAU с виду ничего не меняет. А как должно быть? Привел одну из фото с осциллографа (сверзу BCLK внизу DATA).
Чтобы это увидеть, нужно смотреть все сигналы сразу: LR, BCLK, DATA, - чтобы было видно начало фрейма. Из картинки, как у вас, всегда будет одно и тоже, разницы не увидите. Полярность BCLK влияет на фронт обработки данных.

Присоединяюсь к предыдущему пожеланию добавить джампер чтобы менять полярность BCLK.
Это учтем. Пока можно воспользоваться прошивкой, выложенной ранее, с измененной полярностью BCLK для режима Reflex-slave.

По поводу точности частот, что говорит частотомер осциллографа (не особо точный, но тем не менее):
ADAU как мастер выдает LR 95.940k
Рефлекс как мастер выдает LR 95.980k
Разница небольшая, но видимо ее достаточно для несинхронности. Raspberry не мерил, сейчас нет под рукой.
Точность Reflex подробно описана здесь, сообщение №73.

Рассинхронизация не зависит от точности. Рассинхронизация происходит, когда у модулей разный источник опорной частоты. Получается, что при таких условиях модули никогда не стартуют одновременно, это невозможно, и тактирующие сигналы одного модуля отстают/опережают тактирующие сигналы другого.
 

xkir

Well-known member
нужно смотреть все сигналы сразу: LR, BCLK, DATA,
К сожалению, осц у меня двухканальный :) начало фрейма я тоже смотрел все 3 сигнала, при помощи курсоров. Все как я и описал - полярность данных не совпадает со спекой 1467.
С альтернативной прошивкой REFLEX_v1.5_Slave_BCLK_INV - я ее попробовал - все стало "правильно" но только в режиме slave. для master полярность осталась по-старому, и фронт bclk в начале фрейма тоже не тот - нужно негативный а вижу позитивный.
Спасибо за помощь, останусь пока на альтернативной прошивке и режиме slave.
 

Wildcat

Member
Попробовал подключить Reflex вместе с PCM5102 к смартфону на андроиде. Все определяется и работает корректно, только в динамиках каждые 5-7 секунд слышны серии негромких щелчков. При работе с компьютера все чисто, никаких щелчков. Но с андроида с любого смартфона - щелчки.

Проверил на прошивках 1.5 и 1.5-no-EEPROM - одинаково. Моя плата - с неправильной микросхемой памяти.

Пока решил проблему так: перевел Reflex в режим 2.0 32-bit. Теперь все воспроизводится чисто и со смарта и с компьютера. И, кстати, в этом режиме Reflex теперь представляется как REFLEX Stereo 2.0 32 bit, а не как SUPER PRIME ;)

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

Евгений

Administrator
Команда форума
Хотелось бы получить следующую версию прошивки уже без таких шероховатостей. Фиг с ней, с Кукурукой, лишь бы основное работало как заявлено.
Здесь и так работает все, как заявлено, без каких-либо "шероховатостей": и определяется всегда Reflex как Reflex, SUPER PRIME как SUPER PRIME , и воспроизводится во всех режимах, как положено, никаких щелчков, треска, хлопков.
 

Wildcat

Member
Здесь и так работает все, как заявлено, без каких-либо "шероховатостей": и определяется всегда Reflex как Reflex, SUPER PRIME как SUPER PRIME , и воспроизводится во всех режимах, как положено, никаких щелчков, треска, хлопков.
Хорошо там у вас...

А у нас плата Reflex с прошивкой 1.5 со всеми снятыми джамперами представляется как SUPER PRIME и трещит при работе с андроидом, а с перемычкой на 7 пине представляется как REFLEX и уже не трещит, только всегда в 32-битном режиме.

Я бы с вами поменялся платами, чесслово :)

(Самое забавное, что в самом файле прошивки видны строчки Reflex, но нет строчек SUPER PRIME. Откуда тогда система берет это? Драйверы ЧипСтудио? До этого у меня не было таких плат и вашей продукции вообще... )


Еще наблюдение: в режиме 2.0 32 бита есть только две опции вывода звука в windows 10 - 32 бита 96 кГц (по умолчанию) и 32 бита 88,2 кГц. И если переключиться на 88.2 кГц, то воспроизведение звука ускоряется, и это сохраняется при перезапуске программ/компьютера. Это баг или фича? В обычном режиме 2.0 переключение частот и битности не влияло на скорость воспроизведения, Reflex это все отрабатывал...
 
Последнее редактирование:
Верх