Страница 33 из 59 Первая ... 23313233343543 ... Последняя
Показано с 641 по 660 из 1175

Тема: Цифровой транспорт с открытым кодом на NanoPI-Neo*

  1. #1 Показать/скрыть первое сообщение.
    Завсегдатай
    Автор темы
    Аватар для Nikkov
    Регистрация
    01.11.2005
    Адрес
    Омск, Сибирь
    Возраст
    51
    Сообщений
    1,360

    По умолчанию Цифровой транспорт с открытым кодом на NanoPI-Neo*

    В этой ветке планирую собирать информацию про создание аудиоплеера на базе серии NanoPi-Neo от FriendlyArm.
    Готовые образы можно найти по адресу: https://drive.google.com/drive/folde...zA?usp=sharing

    На данный момент реализованы:
    1. Драйвер I2S в ядре 4.11 с поддержкой вывода 16-24 бит, 44.1-192 кГц, в мастере и в слэйве. Исходные тексты ядра.
    2. Собран экспериментальный образ системы с Volumio2 для платы NanoPi NEO2 с 64-битным armv8 ядром и 32-битным userspace для armv7. В этом образе, по умолчанию, I2S сконфигурирован в мастере, для конфигурации в слэйве необходимо переименовать файлы sun50i-h5-nanopi-neo2.dtb в sun50i-h5-nanopi-neo2-master.dtb, а sun50i-h5-nanopi-neo2-slave.dtb в sun50i-h5-nanopi-neo2.dtb соответственно. Образ также проверил с USB DAC-ом - работает и 44х16, и 192х24.
    3. Собран образ системы с Volumio2 для плат NanoPi NEO и NanoPi NEO-AIR архитектуры armv7. В этом образе, по умолчанию, I2S сконфигурирован в мастере, для конфигурации в слэйве необходимо переименовать файлы sun8i-h3-nanopi-neo.dtb в sun8i-h3-nanopi-neo-master.dtb, а sun8i-h3-nanopi-neo(-air)-slave.dtb в sun8i-h3-nanopi-neo(-air).dtb соответственно.
    4. Разработана плата формирователя/изолятора для семейства NanoPi-Neo, платы которого совместимы по выводам друг с другом. На плате есть возможность установить собственные генераторы или завести их через гальваническую развязку из ЦАП-а. Возможна работа платы и когда SOC I2S в мастере, тогда она просто обеспечивает гальваническую развязку. За основу платы взята схема и проект для ПЛИС аналогичной платы для cubietruck-а от Анатолия (Wired), за публикацию которых ему огромное спасибо.

    Фото платы NanoPi-Neo2 с установленной платой формирователя:
    Нажмите на изображение для увеличения. 

Название:	clock.jpg 
Просмотров:	3220 
Размер:	488.2 Кб 
ID:	303657
    Схема платы формирователя:
    neoclock - Project.pdf
    Проект ПЛИС:
    CPLD.ZIP
    Проект схема + печатная плата в DesignSpark + архив с герберами
    pcb_arch.zip

    Так как периодически в личке спрашивают про платы, то напишу здесь: платами я не торгую, вся необходимая информация по их самостоятельному изготовлению выложена здесь.
    Последний раз редактировалось Nikkov; 21.07.2018 в 17:18.
    Электроника наука слабоизученная (c)
    Неизвестный специалист антенного хозяйства по поводу периодического пропадания сигнала в коллективной антенне

  2. #641
    Завсегдатай
    Автор темы
    Аватар для Nikkov
    Регистрация
    01.11.2005
    Адрес
    Омск, Сибирь
    Возраст
    51
    Сообщений
    1,360

    По умолчанию Re: Цифровой транспорт с открытым кодом на NanoPI-Neo*

    Цитата Сообщение от romanetz Посмотреть сообщение
    Т.е. частота мастерклока фиксированная, а делители переключаются драйвером?
    Частота мастерклока, в мастере, устанавливается драйвером в соответствии со этой строкой, далее делители переключаются в зависимости от частоты дискретизации. Напомню, что в мастере, начиная с какой-то версии ядра 4.ХХ используют дробный делитель для мастерклока, что приводит, например, к тому, что pcm5102a не может работать в режиме без мастер-клока на частотах > 48кГц.
    Электроника наука слабоизученная (c)
    Неизвестный специалист антенного хозяйства по поводу периодического пропадания сигнала в коллективной антенне

  3. #642
    Частый гость Аватар для romanetz
    Регистрация
    28.03.2015
    Сообщений
    153

    По умолчанию Re: Цифровой транспорт с открытым кодом на NanoPI-Neo*

    Nikkov, а отчего разный конфиг ядра /касательно звука/ используется в сборках для neo+2 и neo2?

  4. #643
    Завсегдатай
    Автор темы
    Аватар для Nikkov
    Регистрация
    01.11.2005
    Адрес
    Омск, Сибирь
    Возраст
    51
    Сообщений
    1,360

    По умолчанию Re: Цифровой транспорт с открытым кодом на NanoPI-Neo*

    Цитата Сообщение от romanetz Посмотреть сообщение
    Nikkov, а отчего разный конфиг ядра /касательно звука/ используется в сборках для neo+2 и neo2?
    Какого ядра, каких сборках? Я уже совсем запутался в ваших изысканиях.
    Электроника наука слабоизученная (c)
    Неизвестный специалист антенного хозяйства по поводу периодического пропадания сигнала в коллективной антенне

  5. #644
    Частый гость Аватар для romanetz
    Регистрация
    28.03.2015
    Сообщений
    153

    По умолчанию Re: Цифровой транспорт с открытым кодом на NanoPI-Neo*

    Стоп-стоп, мои изыскания не причём, речь идёт ТОЛЬКО о образах, которые вы выложили.
    Для платы neo2 в конфиге ядра есть модуль snd-pcm5102 и в системе (modules.*, snd-pcm5102.ko)
    В том образе, который вы выложили для neo+2, его нет ни вкомпилированного в ядро, ни в виде модуля, в силу чего I2S на плате neo+2 не работает. Вот и спрашиваю, в чём причина такого различия. Для проверки утверждения, я скопировал строчки в modules.*, относящиеся к этому модулю, и snd-pcm5102.ko из образа для neo2 - взлетело нормально.

  6. #645
    Завсегдатай
    Автор темы
    Аватар для Nikkov
    Регистрация
    01.11.2005
    Адрес
    Омск, Сибирь
    Возраст
    51
    Сообщений
    1,360

    По умолчанию Re: Цифровой транспорт с открытым кодом на NanoPI-Neo*

    Цитата Сообщение от romanetz Посмотреть сообщение
    Стоп-стоп, мои изыскания не причём, речь идёт ТОЛЬКО о образах, которые вы выложили
    Теперь понятно. Причина различия в том, что я, видимо, не учел какие-то моменты в скрипте для neo+2 и патч файла /sound/soc/sunxi/Kconfig не сработал или сработал неверно. А так как сборка neo2 и neo+2 делались на одних исходниках для одного процессора, то собранный модуль snd-pcm5102.ko подошел. Попробую посмотреть этот момент.
    И да, если патч не сработал, то значит и драйвер I2S остался оригинальный, с основного ядра.

    ---------- Сообщение добавлено 21:29 ---------- Предыдущее сообщение было 14:11 ----------

    Собрал новый образ для neo+2 и neo2 на базе armbian v19.11.6 и свежей Volumio. Заодно в образах исправил неверный LR.
    Электроника наука слабоизученная (c)
    Неизвестный специалист антенного хозяйства по поводу периодического пропадания сигнала в коллективной антенне

  7. #646
    Частый гость Аватар для romanetz
    Регистрация
    28.03.2015
    Сообщений
    153

    По умолчанию Re: Цифровой транспорт с открытым кодом на NanoPI-Neo*

    Всё работает
    Предлагаю в шапку поместить
    Последний раз редактировалось romanetz; 26.02.2020 в 06:36.

  8. #647
    Завсегдатай
    Автор темы
    Аватар для Nikkov
    Регистрация
    01.11.2005
    Адрес
    Омск, Сибирь
    Возраст
    51
    Сообщений
    1,360

    По умолчанию Re: Цифровой транспорт с открытым кодом на NanoPI-Neo*

    Цитата Сообщение от Михаил45 Посмотреть сообщение
    Изучаю гит на предмет адаптации для одроидс2.
    А какой смысл в моих наработках для другого SoC? I2S у amlogic другой, кстати, не знаю в какой он степени готовности, может быть гораздо лучше, чем у allwinner-ов? Да и Volumio для C2 поддерживается официально, поэтому все мои патчи не имеют смысла.

    Михаил45
    Нет, мне не жалко, а интересно, как это можно применить к другим SoC.
    Последний раз редактировалось Nikkov; 26.02.2020 в 07:22.
    Электроника наука слабоизученная (c)
    Неизвестный специалист антенного хозяйства по поводу периодического пропадания сигнала в коллективной антенне

  9. #648
    Старый знакомый Аватар для ass77
    Регистрация
    08.01.2015
    Сообщений
    867

    По умолчанию Re: Цифровой транспорт с открытым кодом на NanoPI-Neo*

    Цитата Сообщение от Nikkov Посмотреть сообщение
    Собрал новый образ для neo+2 и neo2 на базе armbian v19.11.6 и свежей Volumio.
    В чем отличие от предыдущих версий сборки? Для нео аир будет?
    Заодно в образах исправил неверный LR.
    В смысле полярность LRCLK была инвертирована?

  10. #649
    Частый гость Аватар для romanetz
    Регистрация
    28.03.2015
    Сообщений
    153

    По умолчанию Re: Цифровой транспорт с открытым кодом на NanoPI-Neo*

    Я по этой инструкции https://vjordan.info/log/fpga/nanopi...4x-kernel.html подменил в dt режим контроллера usb0 с host на otg и драйвера usb-gadget (g_audio, g_ether) стали грузиться. Предлагаю тему совместно развить, кому интересно. В образе уже есть, всё что нужно.
    [ 60.566246] g_audio gadget: Linux USB Audio Gadget, version: Feb 2, 2012
    [ 60.566256] g_audio gadget: g_audio ready
    [ 375.043694] using random self ethernet address
    [ 375.043704] using random host ethernet address
    [ 375.044389] usb0: HOST MAC 6a:4e:ed:c5:65:f4
    [ 375.044468] usb0: MAC 2a:69:c1:c1:07:38
    [ 375.044499] using random self ethernet address
    [ 375.044503] using random host ethernet address
    [ 375.044565] g_ether gadget: Ethernet Gadget, version: Memorial Day 2008
    [ 375.044570] g_ether gadget: g_ether ready
    Не аманеро, конечно, но uac2 "нахаляву" в линуксе - как минимум интересно. А учитывая, что портов под хост ещё три - почему бы и нет?

  11. #650
    Завсегдатай Аватар для maxssau
    Регистрация
    15.08.2015
    Адрес
    Самара
    Возраст
    39
    Сообщений
    2,608

    По умолчанию Re: Цифровой транспорт с открытым кодом на NanoPI-Neo*

    Цитата Сообщение от romanetz Посмотреть сообщение
    Я по этой инструкции https://vjordan.info/log/fpga/nanopi...4x-kernel.html подменил в dt режим контроллера usb0 с host на otg и драйвера usb-gadget (g_audio, g_ether) стали грузиться. Предлагаю тему совместно развить, кому интересно. В образе уже есть, всё что нужно.

    Не аманеро, конечно, но uac2 "нахаляву" в линуксе - как минимум интересно. А учитывая, что портов под хост ещё три - почему бы и нет?
    А что хотите получить? USB звуковую карту? Какие даст преимущества?
    _________________
    Евгений

  12. #651
    Частый гость Аватар для romanetz
    Регистрация
    28.03.2015
    Сообщений
    153

    По умолчанию Re: Цифровой транспорт с открытым кодом на NanoPI-Neo*

    Линукс умеет составные устройства собирать, комбинации ограничены количеством конечных точек usb контроллера.
    Мне интересна комбинация uac2+cdc+vendor

  13. #652
    Завсегдатай
    Автор темы
    Аватар для Nikkov
    Регистрация
    01.11.2005
    Адрес
    Омск, Сибирь
    Возраст
    51
    Сообщений
    1,360

    По умолчанию Re: Цифровой транспорт с открытым кодом на NanoPI-Neo*

    Цитата Сообщение от ass77 Посмотреть сообщение
    В чем отличие от предыдущих версий сборки? Для нео аир будет?
    В ядре особых отличий быть не должно, а Volumio свежая, надо смотреть, что у них нового.

    Постепенно соберу и для нео, и нео айр.


    Цитата Сообщение от ass77 Посмотреть сообщение
    В смысле полярность LRCLK была инвертирована?
    Да, когда играл с RJ, обратил внимание, что левый канал и в I2S, и в RJ соответствует высокому уровню LR. В самом драйвере для I2S устанавливается только левое выравнивание и оффсет в 1, а соответствие уровня левому каналу надо задавать вручную, через DTS, что и было сделано.
    Ну и для RJ24 сделал вроде как рабочий вариант.

    ---------- Сообщение добавлено 10:36 ---------- Предыдущее сообщение было 10:33 ----------

    Цитата Сообщение от romanetz Посмотреть сообщение
    Линукс умеет составные устройства собирать, комбинации ограничены количеством конечных точек usb контроллера.
    Мне интересна комбинация uac2+cdc+vendor
    Да, я тоже думал попробовать такой вариант, но руки не доходят. С ним получается универсальный комбайн
    Электроника наука слабоизученная (c)
    Неизвестный специалист антенного хозяйства по поводу периодического пропадания сигнала в коллективной антенне

  14. #653
    Старый знакомый Аватар для ass77
    Регистрация
    08.01.2015
    Сообщений
    867

    По умолчанию Re: Цифровой транспорт с открытым кодом на NanoPI-Neo*

    Цитата Сообщение от Nikkov Посмотреть сообщение
    Да, когда играл с RJ, обратил внимание, что левый канал и в I2S, и в RJ соответствует высокому уровню LR. В самом драйвере для I2S устанавливается только левое выравнивание и оффсет в 1, а соответствие уровня левому каналу надо задавать вручную, через DTS, что и было сделано.
    Спасибо. Думал, что показалось, что каналы перепутаны

  15. #654
    Завсегдатай
    Автор темы
    Аватар для Nikkov
    Регистрация
    01.11.2005
    Адрес
    Омск, Сибирь
    Возраст
    51
    Сообщений
    1,360

    По умолчанию Re: Цифровой транспорт с открытым кодом на NanoPI-Neo*

    Выложил туда же образы для нео и эйр, правда у себя не тестировал.
    Электроника наука слабоизученная (c)
    Неизвестный специалист антенного хозяйства по поводу периодического пропадания сигнала в коллективной антенне

  16. #655
    Старый знакомый Аватар для ass77
    Регистрация
    08.01.2015
    Сообщений
    867

    По умолчанию Re: Цифровой транспорт с открытым кодом на NanoPI-Neo*

    Цитата Сообщение от Nikkov Посмотреть сообщение
    образы для нео и эйр
    Встроенный ресемплер как-то кривовато работает. Для 16 бит максимум 176кГц, для 24/32 бит 88кГц. В остальном по быстрому проблем не увидел

  17. #656
    Завсегдатай
    Автор темы
    Аватар для Nikkov
    Регистрация
    01.11.2005
    Адрес
    Омск, Сибирь
    Возраст
    51
    Сообщений
    1,360

    По умолчанию Re: Цифровой транспорт с открытым кодом на NanoPI-Neo*

    Цитата Сообщение от ass77 Посмотреть сообщение
    Встроенный ресемплер как-то кривовато работает. Для 16 бит максимум 176кГц, для 24/32 бит 88кГц. В остальном по быстрому проблем не увидел
    А в прошлой сборке нормально работал? Навскидку я не увидел изменений в Volumio, связанных с mpd, за исключением увеличения размера буфера воспроизведения.
    Электроника наука слабоизученная (c)
    Неизвестный специалист антенного хозяйства по поводу периодического пропадания сигнала в коллективной антенне

  18. #657
    Частый гость Аватар для romanetz
    Регистрация
    28.03.2015
    Сообщений
    153

    По умолчанию Re: Цифровой транспорт с открытым кодом на NanoPI-Neo*

    Надо на aplay сначала проверить с разными форматами или с sox отдельно, а потом уже делать выводы.
    В master режиме частота LRCK отличается от заданной довольно сильно: 96к -> 96,15к
    192к -> 190к
    Оно так и должно быть?
    А на BCLK совершенно конский джиттер.
    На слух не слышно ни того, ни другого (ЦАП подключен через fifo на плисине)
    Последний раз редактировалось romanetz; 27.02.2020 в 10:15.

  19. #658
    Завсегдатай
    Автор темы
    Аватар для Nikkov
    Регистрация
    01.11.2005
    Адрес
    Омск, Сибирь
    Возраст
    51
    Сообщений
    1,360

    По умолчанию Re: Цифровой транспорт с открытым кодом на NanoPI-Neo*

    Цитата Сообщение от romanetz Посмотреть сообщение
    Надо на aplay сначала проверить с разными форматами или с sox отдельно, а потом уже делать выводы.
    В master режиме частота LRCK отличается от заданной довольно сильно: 96к -> 96,15к
    192к -> 190к
    Оно так и должно быть?
    А на BCLK совершенно конский джиттер.
    На слух не слышно ни того, ни другого (ЦАП подключен через fifo на плисине)
    Я как раз про это и писал выше. Долго я с этим делом боролся, списывался с автором последних правок i2s кода в linux-е, писал на форуме armbian, но никому это не интересно. В итоге покопался в коммитах ядра и нашел это усовершенствование. Правда его цель как раз сделать более точную среднюю частоту путем дробного делителя для мастерклока из PLL.
    Электроника наука слабоизученная (c)
    Неизвестный специалист антенного хозяйства по поводу периодического пропадания сигнала в коллективной антенне

  20. #659
    Старый знакомый Аватар для ass77
    Регистрация
    08.01.2015
    Сообщений
    867

    По умолчанию Re: Цифровой транспорт с открытым кодом на NanoPI-Neo*

    Цитата Сообщение от Nikkov Посмотреть сообщение
    А в прошлой сборке нормально работал?
    Честно сказать, не помню, не пользуюсь ресемплером. Но на первых версиях вплоть до 32/384 работало.
    Сейчас на работе погонял нео2. Такая же ситуация как с эир. Да, это все в мастере. Если нужно в слэйве попробовать, то только в выходные

  21. #660
    Завсегдатай
    Автор темы
    Аватар для Nikkov
    Регистрация
    01.11.2005
    Адрес
    Омск, Сибирь
    Возраст
    51
    Сообщений
    1,360

    По умолчанию Re: Цифровой транспорт с открытым кодом на NanoPI-Neo*

    Цитата Сообщение от ass77 Посмотреть сообщение
    Да, это все в мастере
    Тогда это все к той же проблеме, что описана выше. В мастере, на высоких частотах, джиттер не дает работать некоторым ЦАП-ам, сбивается синхронизация. По крайней мере на моем тестовом PCM5102A, в мастере, без сигнала мастер-клока, точно такое же поведение, так как он не может засинхронизировать внутренний генератор восстановления мастер-клока по бит-клоку. В слэйве все должно быть нормально.
    Электроника наука слабоизученная (c)
    Неизвестный специалист антенного хозяйства по поводу периодического пропадания сигнала в коллективной антенне

Страница 33 из 59 Первая ... 23313233343543 ... Последняя

Социальные закладки

Социальные закладки

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •