Интернет-приемник: Подключение аудио ЦАП к Raspberry Pi

Если вы хотите сделать интернет-приемник, то самый простой вариант - взять Raspberry Pi, подключить к ней ЦАП (цифро-аналоговый преобразователь, на английском DAC) и нравящуюся вам акустику с усилителем. Ну и поставить то приложение, которое вам нравится (volumio, rune audio, max2play etc). Управлять им вы будете со своего телефона, т.е. на самом интернет-приемнике у вас не будет никаких элементов управления и его можно, например, спрятать за фальш-потолок.

ЦАП нужен потому, что из разъема для наушников у Raspberry Pi качество звука ниже любой критики, тут речь не об аудиофилии, а просто чтобы уши не болели.

Альтернативы I2S DAC

Вместо I2S DAC можно использовать любой HDMI-Video/audio преобразователь (ищется на aliexpress по строке “hdmi rca”. Это коробочка, куда втыкается на вход HDMI и на выходе разъемы RCA “тюльпаны” - желтый видео и белый/красный аудио). Вместе с нужным для него HDMI кабелем будет стоить примерно как и описываемые ниже I2S DAC, так что тут скорее дело вкуса, что использовать.

Конечно, с точки зрения программы это совершенно иной способ вывода звука (не управление ЦАП по I2S интерфейсу, а вывод звука на HDMI), но для вас это просто переключатель в веб-интерфейсе volumio.

Варианты I2S DAC PCM5102 на aliexpress

Искать эти платы на aliexpress проще по строке “Raspberry Pi PCM5102”.

Это отличная альтернатива HiFiBerry, стоящей $35. Модели на aliexpress более чем в четыре раза дешевле.

Сраненение PCM5102 или PCM5122 - что лучше

HiFiBerry ранних моделей (DAC) построены ровно на той же микросхеме, что и платы с aliexpress (PCM5102). Новые HiFiBerry (DAC+) - на PCM5122 которая в основном отличается наличием аппаратной регулировки громкости. Если вы регулируете громкость на усилители (и это самый правильный вариант с точки зрения качества звука), то вам эта возможность просто не нужна. При желании регулировать через интерфейс, например, volumio, вы можете включить software volume control - теоретически это снижает качество, но на практике вряд ли вы это заметите.

Вывод на RCA разъемы Вывод на разъем для наушников
  


Китайцы на них пишут, что это Raspberry Pi HAT-платы, но это не совсем правда. Они подключаются к HAT разъему raspberry pi, но их нельзя просто вставить в него, как HiFiBerry.

В принципе, для подключения паяльник не обязателен, если речь о первом варианте платы и новых raspberry pi (не zero, на которой разъем расширения не распаян) - тогда можно соединить штырьки разъемов с помощью контактных проводов. Найти такие провода можно на aliexpress по строке “wires female to female dupont” - как правило, они цветные, на концах разъемчики (вам нужен вариант female - female).

Raspberry Pi A/B

На самых-самых ранних Raspberry Pi нужные для ЦАП контакты не выведены ни на какой разъем, но вообще есть на плате, и в интернете вы можете найти соответствующие схему. Вряд ли у вас такая модель, поэтому ниже я о них не пишу.

Если у вас чуть более свежие Raspbery Pi первой модели, но до “+” варианта, то нужные для ЦАП контакты находятся на 8-контактном разъеме P5, размещенном пониже основного 26-контактного разъема расширения P1.

Обычно P5 не распаян. Можете посмотреть видео, как его распаивать на сайте HiFiBerry.

Подробнее о P5 можно прочитать Raspberry Pi P5 Header.

Обратите внимание, что разъем подразумевается к установке с обратной стороны платы (хотя в видео про HiFiBerry его паяют с той же стороны, что и основной разъем расширения). Поэтому четные-нечетные контакты в P5 с противоположной стороны от того, как в основном разъеме P1. Проверить себя, можно померив напряжение - на контакте P5-1 должно быть 5В, на контакте P5-2 3.3В, оба последних контакта P5, P5-7 и P5-8 - земля.

Raspberry Pi A+/B+, Raspberry Pi 2, Raspberry Pi 3, Raspberry Pi Zero

Все нужные контакты находятся на основном 40-контактном разъеме расширения. Он теперь называется J8 и состоит из 26 контактов старого разъема P1, и новых контактов.

Строго говоря, тех контактов, что были выведены на P5, в J8 нет. Но программно обеспечивается совместимость, поэтому можно подключать ЦАП на старых моделях к P1 и P5, а на новых к J8.

Как подключить I2S DAC к Raspberry Pi

Первый вариант ЦАП:

DAC Pi A/B   Pi A+/B+, Pi2, Pi3, PiZ   PCM5102
Vcc (+5v) P5-1 J8-2  
+3.3v (not used, just to check youself)   P5-2 J8-1  
BCK P5-3 J8-12 Audio data bit clock input
LRCK(LCK) P5-4 J8-35 Audio data word clock input
DATA(DIN) P5-6 J8-40 Audio data input
Gnd P5-7 J8-39  


В описании ЦАП китаец пишет, что неверно обозначены BCK и DATA, но, наверно, это относится к ранним модификациям платы - на моей крайний разъем обозначен BCK, и так его и надо подключать.

Второй вариант ЦАП:

К первому варианту добавляются контакты:

DAC Pi A/B   Pi A+/B+, Pi2, Pi3, PiZ   PCM5102
GND P1-6 J8-6  
FLT (gnd) P1-14 J8-14 Filter select : Normal latency (Low) / Low latency (High)
DMP (gnd) P5-8 J8-20 ?De-emphasis control for 44.1kHz sampling rate(1): Off (Low) / On (High)
SCL P1-5 J8-5 ?System clock input
FMT (gnd) P1-18 J8-18 Audio format selection : I2S (Low) / Left justified (High)
XMT (3.3v)   P1-1 J8-1  


Подробно разъемы для интересующихся расписаны на вики: RPi Low-level peripherals.

PCM5102 datasheet

Как настроить ЦАП в Volumio

  • Откройте в веб-браузере интерфейс вашего volumio - если volumio у вас один, то открыть его можно по адресу http://volumio.local
  • Нажмите на шестеренку справа вверху окна volumio
  • Выберите пункт меню Playback
  • Включите переключатель I2S DAC и в I2S driver выберите Generic I2S DAC
  • Нажмите Apply
  • Volumio предупредит, что нужна перезагрузка raspberry pi - разрешите перезагрузку
Опубликовано April 30, 2017