RDC4-0027 (ADAU1467) + Raspberry pi zero

mikhalych24

Well-known member
Здравствуйте!
Подключаю raspberry pi zero w к вашему модулю ADAU по инструкции из https://static.chipdip.ru/lib/779/DOC005779621.pdf , т.е. малинка в slave режиме. Столкнулся со странным глюком: запуск на холодную (простите за авто-слэнг) не происходит до тех пор, пока не пнешь RDC4-0027 из SigmaStudio записью прошивки! После этого все играет до следующей холодной перезагрузки! Смотрел логическим анализатором сигналы I2S: когда НЕ работает, сигналы тактирования (BLKC и LR) есть, а DATA из малинки отсутствует! После записи программы из SigmaStudio (команда Link Compile Download) все идет и звук есть. Запись прошивки во FLASH не помогает! Куда покопать?
 

mikhalych24

Well-known member
Есть еще проблемка: как быть с разной частотой сэмплирования, 44.1, 48 и т.д. Сейчас на порту выставлено 48 кГц, соответственно если малинка выдает те же 48 - все ОК, а если 44.1 - играет на повышенных тонах :)! Чем и как и можно ли в принципе динамически менять частоту на ADAU? Сейчас вышел из положения включив ресемплинг в Volumio, только не кошерно это!
 

Александр Ф.

Well-known member
Частоту сэмлирования только перезиливкой прошивки.
Интересно было бы организовать загрузку проекта из Малинки, тем самым при включении трека с определённой частотой в ADAU бы заливалась нужная прошивка.

Может кто-то делал заливку прошивки Малинкой в adau?
 

mikhalych24

Well-known member
Не помогло. :( Действительно EEProm не записывается. Умерла микруха?
 

titron

New member
Может кто-то делал заливку прошивки Малинкой в adau?
SigmaStudio умеет генерировать код на C/C++ для заливки прошивки, а также и для регулировки переменных. Можно накомпилить бинарники и заливать какие надо когда надо.
У меня есть в планах (когда-нибудь, когда будет время) написать себе драйвер для ядра, чтобы всё штатно работало внутри ALSA, ибо сейчас у меня трудится коряво переписанный драйвер от hifiberry.
В ядре находил модуль для adau1701, но пока поразбираться особо не получилось.

Пока получилось сделать загрузку прошивки из SigmaStudio через TCP, но работает оно нестабильно...
 

mikhalych24

Well-known member
Уже не смешно. Поменял eeprom-ку на такую же новую - не помогло! Что за ......??
 

kiryan

Member
SigmaStudio умеет генерировать код на C/C++ для заливки прошивки, а также и для регулировки переменных. Можно накомпилить бинарники и заливать какие надо когда надо.
У меня есть в планах (когда-нибудь, когда будет время) написать себе драйвер для ядра, чтобы всё штатно работало внутри ALSA, ибо сейчас у меня трудится коряво переписанный драйвер от hifiberry.
В ядре находил модуль для adau1701, но пока поразбираться особо не получилось.

Пока получилось сделать загрузку прошивки из SigmaStudio через TCP, но работает оно нестабильно...
Я так понимаю если использовали сервер от hifiberry - то подключали raspberry к adau1701 по SPI ? Если не трудно можете показать схему подключения? Так же в https://github.com/hifiberry/hifiberry-dsp есть упоминания только о поддержке adau145x. Оно у вас заработало и с adau1701, или же пришлось что то переписывать?
 

titron

New member
Я так понимаю если использовали сервер от hifiberry - то подключали raspberry к adau1701 по SPI ?
Не. У меня adau1467 и подключал я её по i2c. А сервер значительно переписал.
С adau1701 по i2c он тоже должен работать (адрес только везде поменять с 0x38 на 0x34).

У меня были какие-то проблемы с этим сервером, но я уже не помню какие. На работе запарка, не до этого...
 
Последнее редактирование:

kiryan

Member
Не. У меня adau1467 и подключал я её по i2c. А сервер значительно переписал.
С adau1701 по i2c он тоже должен работать (адрес только везде поменять с 0x38 на 0x34).

У меня были какие-то проблемы с этим сервером, но я уже не помню какие. На работе запарка, не до этого...
Попробовал ваш сервер, адрес в коде поменял на с 0x38 на 0x34, но кажется не работает. В логах при попытке прочитать/записать что то полотно сообщений waiting for more data, при этом SigmaStudio не ругается, но записаные данные при создании нового проекта не видит
Python:
starting TCP server
__init__
setup
handle
waiting for more data
received request type 0A
command_length = 524544
Len (data, header info): 16 524544
Expect 524544 bytes from header information (read), but have only 16
waiting for more data
received request type 0A
command_length = 524544
Len (data, header info): 32 524544
Expect 524544 bytes from header information (read), but have only 32
waiting for more data
received request type 0A
command_length = 524544
Len (data, header info): 40 524544
Expect 524544 bytes from header information (read), but have only 40
waiting for more data
... и тд.
adau1701 подключил к raspberry pi, и у меня ощущение что i2c приемопередатчик малинки не годится для общения с adau.
Не подскажите к какому i2c устройству вы подключали?
 

titron

New member
на 1701, видимо, другой протокол пакетов TCP.

Есть тема на форуме AD с описанием косяка со стороны разрабов сигмастудии и разбор протокола присутствует.

Можно ещё попробовать оригинальную sigmatcp от AD.

А свою версию сервера я обязательно допилю, но не знаю когда.



i2c приемопередатчик малинки не годится для общения с adau
i2c тем и хорош, что все изделия с ним отлично друг с другом ладят (за исключением некоторых кривых китайских датчиков).
У меня adau1467 подключена на отдельный порт i2c на pi4.
 
Последнее редактирование:
Всем привет! поделитесь опытом, нужно подключить ADAU1452 к Raspberry 3 для вывода i2s. В верхнем посте инструкция для 1701, разве она актуальна для 1452?
 
дефолтные настройки в режиме мастера.
что то я сделал не так, малина мастер у меня. Сейчас посмотрел осцилографом, через Airplay включил музыку на пинах LRCK BCLK есть импульсы. Есть какая то команда для просмотра и перезначения клока малины на прием?
 

Евгений

Administrator
Команда форума
Есть какая то команда для просмотра и перезначения клока малины на прием?
Вы добавили и выбрали нужный ЦАП? В папке overlays размещен нужный overlay?
Чтобы посмотреть порядок загрузки на RasPi, можно воспользоваться командой dmesg и посмотреть, что происходит.
 

xkir

Well-known member
И не забудьте включить в Volumio ресемплирование на ту частоту и битность на которой работает ADAU
 
Верх