«Odessa-46» — маленький TDA1543 стример с большим сердцем

И так, как обещал мой проект маленького стримера с большим сердцем )

“Odessa-46” - малина стример на TDA1543, который помещается на ладони.

Подробное описание и обсуждение.
Сначала был звук…
После многих проб и ошибок, послушав разные цапы, CD и немного винил, понял какой звук мне нравится и почему. Сначала, как принято, уделял внимание высоким, средним, низким, прозрачность, четкость… все как всегда. Но постепенно, пришло понимание, что это не самое важное, и скорее второстепенно. Стал замечать, что есть звук, который хочется слушать, музыка слушается легко не отпускает. Здесь, на форуме, мы называем это “меджик”. В реальности этот меджик, ничто иное как точное (очень, очень, очень точное) преобразование цифровой информации в аналоговую. Ниже поговорим об этом подробнее… В результате, пришло понимание, и идея сделать стример, который этот меджик сможет вытащить из цифры, как я это понимаю и вижу, сможет играть файлы не хуже CD, и не будет стоить дорого. В результате, я получил звук который мне очень понравился. Это была первая версия стримера. Слушая его, не покидала мысль что вместо споров в разных ветках на форуме о том что лучше, какой цап, какое питание и т.д все равно никого не словами и роликами с youtube не убедишь. И.было-бы здорово сделать вторую версию и отправить в тур, послушать кому интересно. Показать на примере о чем речь. Сказано сделано ) Второй стример готов! Но, глядя на количество туров, сложность с логистикой и учитывая что все равно единичный экземпляр, пришла идея просто открыть тему, описать проект подробно, поделиться идеями что как и почему… А учитывая относительную простоту стримера и количество у нас энтузиастов в малино-шляпном деле, рассказать что и как. И если кому будет интересно, и зная меня, поверят на слово что оно того стоит, смогут просто собрать да и послушать. Так что погнали )
И так, делаем стример, который умеет играть музыку с минимальными затратами и с максимальным результатом )
По сути нужно решить 2 задачи,
Получить из файла (стрима) цифровой сигнал (I2S) понятный для ЦАП
Преобразовать это сигнал в аналоговую форму - звук.
Вроде все просто ) но давайте по порядку. Т.к. я (и вы) не эксперты в разработке аудио аппаратуры, для нас есть одно хорошее правило. Просто убираем ВСЕ лишнее что критично для достижения цели. Делаем путь максимально простым и коротким. Это здесь решающий момент.
Для получения и обработки файла нужен минимальный компьютер. И тут малина самый лучший и проверенный вариант. Знаю, есть альтернативы, бигли, SDLog, очень уважаю эти проекты. Но выбрал Малину. Плюсов больше, а минусы победим )
Из плюсов софт (Yoctoap спасибо @igor63r ), ее функциональность и WiFi - отвязка от роутера что важно!
С этим все хорошо, но есть проблема с I2S, малина его плохо делает, т.к. у нее нет для этого правильных клоков. Для этого нужна шляпа, способная исправить I2S сигнал, другими словами reclocker. Шляп таких море, и большинство я пробовал. Но если разобраться в сути как они работают, то всего две, делают это так, как по мне наиболее правильно и элегантно. И это наверное самый важный компонент в нашей системе.

Остановимся тут подробнее… Пофилософствуем )
Если разобраться в сути то мы имеем не одно а два преобразования цифровой информации в аналоговую форму., Между файлом и ЦАП еще одно цифро-аналоговое преобразование, это важно понять. Здесь меджик начинает свой путь. Конечно если драйвер малины и софт что то привносит, то проблемы появятся и раньше. Но тут мы мало на что можем повлиять и поверим что цифру файла малина прочитала правильно и перевела в аналоговый цифровой сигнал. Т.е. малина это первое звено в переводе цифры из файла в цифровой аналоговый сигнал где 0 и 1 представлены П образными импульсами от 0 до 5 вольт. И т.к. ноликов и единичек много, то и импульсов этих много, значит сигнал высокочастотный и с ним надо аккуратненько очень. И так, считаем что малина со своей задачей справилась, 0 и 1 вычитаны с файла в правильной последовательности, без изменений и теперь представляют аналоговый сигнал. Но кроме правильной последовательности, П пульсы должны быть в сигнале в строго определенное время, точность для формата CD - пикосекунды! Вот здесь, если клоки не точные или гдето косяк, появляется джиттер и мэджику конец (обычно здесь он и умирает в USB и SPDIF мясорубке). Вернемся к реклокерам… Хоть шляп разных и много, но используют они все почти одну и ту же микросхему и технологию корректировки частоты - PPL, У кого то работает лучше, у кого то хуже. Но можно это реализовать гораздо круче. Без компромиссов. Это реклокеры с FIFO буфером. По сути это еще один компьютер, у которого нет операционной системы, realtime компьютер, без прерываний… У него своя оперативная память - буфер. Такому реклойеру плевать что и как до него было… Важна только последовательность данных. Чтобы вы поняли, малина производит поток данных, но делает это не ровно… иногда отвлекается… Шумит… И это все идет дальше, и с этим почти все реклокеры борются как могут, но в силу технологии и они не всесильны. А вот реклокер с FIFO это вообще не волнует! Они тупо загоняют поток 0,7 секунды (здесь это очень много) в память (буфер), и уже оттуда плавно с аккуратностью правильных клоков, которые находятся рядом в миллиметрах, с расстановкой, создают заново идеальный I2S поток! Реклокера, которые работаю так, я знаю всего два. Ian Canada и Allo Kalli. Я выбрал Kalli супер соотношение цена качество, очень им доволен. Есть две версии, нам нужна на 22/24MHz. Теперь, добавим сюда возможность (необходимость) питать ее отдельно получаем супер вариант обойти проблему малины и отвязаться от нее по питанию.

Двигаемся дальше…
И так, имеем малину, которая за 10 секунд стартует и сразу готова выполнять грязную работу на отлично, трудиться над интерфейсом, принимает и читает файлы переводя их в цифровой аналоговый поток. Далее имеем правильный реклокер. Что по сути второй realtime компьютер который питается отдельно, принимает как есть, накапливает в буфер и по новой создает идеально возможный I2S сигнал. Полдела сделано! Дальше ЦАП. Не буду расписывать почему и как выбор пал на мультибит от Philips - TDA1543. Об этом на форуме море написано. Это в нашем стримере еще одно гениальное звено… Один чип, внутри 16bit параллельное мультибит NOS преобразование, одно питание и возможность пассивно получить аналоговый сигнал. Другого такого чипа я не знаю. Все что нам нужно, это поближе соединить его с I2S реклокером (4 провода), запитать и получить на выходе аналоговый сигнал в виде тока. Который для простоты и сокращения пути к усилителю, пройдет через один резистор, где мы получим напряжение (преоброзовав ток в вольты IV), и чтобы избавиться от постоянного напряжения подсоединен конденсатор. Все! Два пассивных компонента. Вот в таком исполнении стримера, мы оптимально решаем все поставленные задачи на пути от файла к звуку. Наиболее коротким путем, без малейшего вмешательства со стороны оверсемплинга, кабелей spdif, usb… Всего этого здесь нет. И да, так можно слушать.

А напоследок вишенка на торте… маленькое ноу хау от меня. По поводу питания TDA1543.
Как видно, имеем уже два питания, малина 5В 3А, Kalli reclocker 5V 150mA. Теперь ЦАП… И тут очень важный момент, как вы видите, то что зайдет в 1543 по питанию, то мы и услышим. Напряжение, а точнее ток, какой мы подадим, на нем 1543 и будет играть. Как на струне гитары ) Дергая ее в строгом соответствии с полученными цифрами. Можно конечно 5В линейный регулятор как у всех, но в моем стримере я использую аккумулятор крону - 9В, как есть без преобразования, прямо в ноги 1543. Подобрав сопротивления ref так, что играет без проблем пока крона не просядет до 5 вольт. Без проблем хватает на пару вечеров. Для наглядности, даже переключатель сделал чтоб на лету переключать батарейку и питание с регулятора. Попробуете, сами все услышите…

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

Что понадобится:

Raspberry Pi 3 Model B+ (надеюсь у вас уже есть)

ALLO KALI Reclocker I2S FIFO 22/24MHz 192kHZ
image

TDA1543
image

Аккамуляторы Tensai TR-9V и зарядка для питания ЦАП 1543

Тут подробнее описание идеи

image

Если Вам интересно и хотелось-бы послушать… голосование здесь!

… в процессе пополнения и дополнения… фото eще будут )
пока, если что пишите пожалуйста замечания и комментарии по тексту в ЛС
Спасибо

147 лайков

Лайк не глядя :grin: Теперь пойду читать!

4 лайка

да, ссори ) много получилось…

Класс, Вадим! Спасибо огромное!!!

1 лайк

очень интересная тема :+1:

1 лайк

а тур будет?

1 лайк

… думаю можно устроить )

11 лайков

Мощно выступил, благодарочка! Хоть и не любитель и далек от темы, но прочитал с интересом. Ибо тда 1543 - старая любовь.

2 лайка

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

2 лайка

да правда… но они используются, просто люди чёт молчат ) Устройство тоже готово, воткнул и слушай (единственный момент его в Россию доставить, т.к. пока в Германии, но это решаемо)

2 лайка

интересно, лайк.
а если малину 3б+ на более музыкальную 1б поменять, не слышно будет разницы?

1 лайк

Гениально, Вадим!
Простыми словами, лаконично описали сложные процессы. Вам научно-популярную литературу писать. Прочитал с удовольствием, не мог оторваться.
Фото в шапке - супер презентабельно.
Буду с интересом наблюдать за проектом.
Спасибо! :100: :+1:

7 лайков

А почему “46” и где предыдущие 45? :slightly_smiling_face:

1 лайк

Подписался! Лайк! Давно ищу себе стример+ЦАП активных колонок на работу. С нетерпением жду продолжения!

1 лайк

Поздравляю, Вадим!
Давно с интересом наблюдаю за процессом…
Получилось таки!!! :+1::+1::+1:

7 лайков

и насколько это все “выше сильнее дальше” от pi2aes?

3 лайка

Разве это не другое? Здесь на выходе аналоговый сигнал, а в pi2aes цифра.

3 лайка

Уже сам посмеялся над своим вопросом)).
Да , это не транспорт. Тут не сравнить.
Вопрос, наверное), был в целом о звуке, по сравнению с системой со “взрослым” цап и транспортом с pi2aes. Конкретно в сетапе Вадима

1 лайк

Почему не транспорт, можно и как транспорт использовать, если без ЦАП TDA1543.

1 лайк

Спасибо всем за тёплые слова и интерес! Очень приятно ) Не ожидал.
Значит теперь есть место для обсуждения и идей. Т.к. проект развивается.
На все вопросы отвечу!

22 лайка