home.social

#i2s — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #i2s, aggregated by home.social.

  1. [Перевод] Вайб‑кодинг для ПЛИС: как я собрал I2S FIFO‑реклокер без знания Verilog

    Вайб‑кодинг выглядит безобидно, пока речь идет о скриптах, лендингах и небольших сервисах. Но что будет, если попробовать с его помощью собрать проект для ПЛИС: с I2S, FIFO‑буфером, DSD, S/PDIF, UART, PSRAM и отладкой на реальном железе? Я проверил это на практике и почти без знания Verilog прошел путь от мигающего светодиода до рабочего FIFO‑реклокера для цифрового аудио. Получилась история о том, где ИИ действительно помогает инженеру, где уверенно ведет в тупик и почему в какой‑то момент все равно приходится доставать логический анализатор. Читать кейс

    habr.com/ru/companies/otus/art

    #ПЛИС #FPGA #Verilog #вайбкодинг #ИИ #I2S #FIFO #реклокинг #цифровое_аудио #отладка

  2. [Перевод] Вайб‑кодинг для ПЛИС: как я собрал I2S FIFO‑реклокер без знания Verilog

    Вайб‑кодинг выглядит безобидно, пока речь идет о скриптах, лендингах и небольших сервисах. Но что будет, если попробовать с его помощью собрать проект для ПЛИС: с I2S, FIFO‑буфером, DSD, S/PDIF, UART, PSRAM и отладкой на реальном железе? Я проверил это на практике и почти без знания Verilog прошел путь от мигающего светодиода до рабочего FIFO‑реклокера для цифрового аудио. Получилась история о том, где ИИ действительно помогает инженеру, где уверенно ведет в тупик и почему в какой‑то момент все равно приходится доставать логический анализатор. Читать кейс

    habr.com/ru/companies/otus/art

    #ПЛИС #FPGA #Verilog #вайбкодинг #ИИ #I2S #FIFO #реклокинг #цифровое_аудио #отладка

  3. [Перевод] Вайб‑кодинг для ПЛИС: как я собрал I2S FIFO‑реклокер без знания Verilog

    Вайб‑кодинг выглядит безобидно, пока речь идет о скриптах, лендингах и небольших сервисах. Но что будет, если попробовать с его помощью собрать проект для ПЛИС: с I2S, FIFO‑буфером, DSD, S/PDIF, UART, PSRAM и отладкой на реальном железе? Я проверил это на практике и почти без знания Verilog прошел путь от мигающего светодиода до рабочего FIFO‑реклокера для цифрового аудио. Получилась история о том, где ИИ действительно помогает инженеру, где уверенно ведет в тупик и почему в какой‑то момент все равно приходится доставать логический анализатор. Читать кейс

    habr.com/ru/companies/otus/art

    #ПЛИС #FPGA #Verilog #вайбкодинг #ИИ #I2S #FIFO #реклокинг #цифровое_аудио #отладка

  4. [Перевод] Вайб‑кодинг для ПЛИС: как я собрал I2S FIFO‑реклокер без знания Verilog

    Вайб‑кодинг выглядит безобидно, пока речь идет о скриптах, лендингах и небольших сервисах. Но что будет, если попробовать с его помощью собрать проект для ПЛИС: с I2S, FIFO‑буфером, DSD, S/PDIF, UART, PSRAM и отладкой на реальном железе? Я проверил это на практике и почти без знания Verilog прошел путь от мигающего светодиода до рабочего FIFO‑реклокера для цифрового аудио. Получилась история о том, где ИИ действительно помогает инженеру, где уверенно ведет в тупик и почему в какой‑то момент все равно приходится доставать логический анализатор. Читать кейс

    habr.com/ru/companies/otus/art

    #ПЛИС #FPGA #Verilog #вайбкодинг #ИИ #I2S #FIFO #реклокинг #цифровое_аудио #отладка

  5. I adapted the #I2S Pinout for the #DECtalk Mini from the #MAX98357A Board to my NanoPi Nanohat #PCM5102A
    Sounds much louder as the PWM-Version :)
    The Board is a #Waveshare RP2040 Zero

  6. Looking at schematics and #firmware of #Teufel #MYND waterproof portable speaker.

    Very cool to check out their #OpenHardware design, though not much to see.

    Everything of note runs through the WB-2835P #Bluetooth / Audio Module. It even acts as USB-Soundcard and digitizes Line-In, then outputs #I2S to the amplifier chips.

    worldelite.net.cn/en/DownLoad/

    github.com/teufelaudio/mynd-ha

  7. Someone asked how play multiple simultaneous CD-quality WAVs from an SD card to I2S DAC on ESP32 in CircuitPython. Turns out: possible! Can get a bit glitchy if doing USB stuff tho youtube.com/watch?v=97OA6L9PLCg
    code: github.com/todbot/circuitpytho
    #CircuitPython #i2s #esp32

  8. STM32 Tutorial #57 - Music Player part 2 - Reading and Parsing WAV files

    Second video in the Music Player series. In this video we will implement the file handling, WAV file parsing and sending the WAV PCM data to the audio DAC.

    #STM32 #GettingStarted #Tutorial #STM32CubeIDE #STM32CubeMX #I2S #DMA #WAV #SDIO #STM32World

    youtube.com/watch?v=5F6Y1Ttpg-A

  9. STM32 Tutorial #56 - Music Player part 1 - Audio out to I2S

    In this video we start building our "Music Player" introduced in the previous video. This video will focus on the I2S audio out to the DAC as well as adjusting sample rates. Part 2 which will deal with reading WAV files from SD card will follow soon.

    #STM32 #GettingStarted #Tutorial #STM32CubeIDE #STM32CubeMX #I2S #DMA #STM32World

    youtube.com/watch?v=hFuhPGSGzWM

  10. Quite possibly the ugliest music player in history. The visual design could use a bit of work. #STM32 #I2S #DMA #SDIO #FatFS

    Videos will be posted here: youtube.com/playlist?list=PLVf

  11. STM32 Tutorial #55 - I2S w. DMA - Dual Sine

    In this Getting Started Tutorial video we are going to dive into generating an audio I2S stream. We will be creating dual SINE waves (Left/Right) at 96 kHz sample rate.

    #STM32 #Tutorial #GettingStarted #STM32CubeIDE #STM32CubeMX #I2S #DMA #STM32World

    youtube.com/watch?v=vOAf3xxGq_o

  12. Цифровой звук на STM32: подключаем аналоговый микрофон через SAI и NAU88C22

    ИИ обложка, потому что модно. Иногда простой проект превращается в увлекательное исследование. Разбираясь с записью звука на STM32L432 через аудиокодек NAU88C22, я не только подключил микрофон и настроил кодек, но и столкнулся с рядом интересных задач. Разбираясь с ними, я узнал много нового о SAI, работе с SD-картой и нюансах цифрового звука — и теперь хочу поделиться этим опытом. Железка, на которой идет разработка, — это не просто плата для экспериментов, а прототип, сделанный как образец для одного проекта. Так что любопытство, конечно, присутствовало, но двигало процесс скорее желание довести до ума конкретное (будущее) устройство.

    habr.com/ru/companies/selectel

    #selectel #stm32 #cubeide #микроконтроллеры #nau88C22 #i2s #wav

  13. Using Audio Hardware To Drive Neopixels Super Fast - Here’s the thing about running large strings of Neopixels—also known as WS2812 add... - hackaday.com/2025/01/13/using- #ledhacks #esp32 #i2s #led

  14. Hmm. Ich sollte mal mit meinem digitalen (#I2S) Audio Umschalter fertig werden, JLCPCB wirft gerade mit Gutscheinen um sich 🤣

  15. Необычный случай с ремонтом китайского декодера аудио 5.1

    Год назад я приобрёл на Авито по символической цене в 300 р. неисправный китайский девайс под названием «ЦАП 5.1 Bluetooth декодер» модели HD920Pro. Это универсальная приставка аудио, выполняющая роль mp3-плеера с USB флешки, плеера через Bluetooth (Bluetooth ресивер), звуковой карты, декодера 5.1 звука с SPDIF (коаксиала или оптики Toslink) и прочее. В данной статье я решил поделиться с читателями, пожалуй, как я считаю, необычным случаем моей ремонтной практики. Хотя, всякое может быть. Может для кого-то, кто занимается ремонтом глубже, этот случай покажется совершенно обычным.

    habr.com/ru/articles/849616/

    #ацп #i2s_decoding #i2s #spdif #toslink

  16. Запуск I2S Трансивера на Artery [часть 2] (DMA FSM, Pipeline)

    В этом тексте вы узнаете, что общего между I2S трансивером и оладьями . Да... Именно так. А также зачем программисту микроконтроллеров конвейеры и цифровые фильтры . В тексте изложено про то, как источать звук при помощи I2S + DMA.

    habr.com/ru/articles/834304/

    #DMA #i2s #конвейер #fsm #hiload #конечные_автоматы #pipeline #wm8731 #artery #fullduplex

  17. Over at Digital Design HQ , I'm documenting and discussing a to-from project. Stop on by 👋 and see how nice it is to work in 🤓 discord.gg/ceheSfKzRM

  18. Arduino Audio and MIDI Frameworks

    I’ve been collecting bookmarks for interesting Arduino audio projects for a while now, and having now played with the XIAO SAMD21 I started looking back over my list for other things to try.  One thing that occurred to me is that there are a now a number of more powerful audio frameworks available for a range of microcontrollers, so in this post I’m doing an introductory “look see” at some of them, largely as “notes to self” to come back to them for some more detailed projects in the future.

    Note: Many of these require a 32-bit processor, which is one of the reasons I’ve not looked at them so far.

    Warning! I strongly recommend using old or second hand equipment for your experiments.  I am not responsible for any damage to expensive instruments!

    If you are new to microcontrollers, see the Getting Started pages.

    Mozzi

    I’ve spent quite a bit of time with Mozzi of course, the synthesis library for Arduino that supports a large range of microcontrollers, including the “original” 8-bit Arduino ATmega328P, so I won’t go over that again here.

    For a starting point with Mozzi, see: Arduino PWM MIDI Synthesis with Mozzi.  For using Mozzi on a 32-bit SAMD processor, there is more here and here.

    But Mozzi isn’t the only game in town, especially if we’re expanding out to 32-bit microcontrollers.

    The Arduino Sound Library

    https://www.arduino.cc/reference/en/libraries/arduinosound/

    This is an official Arduino library that supports SAMD21 based microcontrollers using an I2S digital to analog converter. It is designed for the MKR series of official Arduino boards.

    Interestingly it appears to only support I2S audio devices for sound input and output.  That seems like a little bit of a missed opportunity to me in that the SAMD21 has a built-in DAC, but I guess analogWrite() deals with access to the DAC relatively easily.

    It is designed for official Arduino SAMD architecture boards – so those in the MKR series.  It might work on other SAMD architecture boards, I haven’t looked into it in detail.

    Phil Schatzmann’s Arduino Audio Tools

    https://github.com/pschatzmann/arduino-audio-tools

    This is a suite of open source code for audio stream processing, providing a range of audio sources (e.g. microphones, Internet streams, files, sensors, and so on) and sinks (e.g. DACs, PWM audio, MP3, codecs, audio modules, etc).

    It can be used to build audio players, processors, effects, file processors, audio visualisers, networked audio tools, and so on.

    I believe it supports the following microcontroller architectures:

    • ESP32 (S and C variants)
    • ESP8266
    • RP2040 (MBED and non-MBED)
    • AVR
    • STM32
    • SAMD

    It supports several audio output boards too, including: ESP32-A1S based boards (ES8388 or AC101 codecs); VS1053 modules; and WM8960 modules.

    I believe this is a library for audio processing, not necessarily audio synthesis.

    Marcel Licence’s ML Synth Tools

    https://github.com/marcel-licence/ML_SynthTools

    This is a comprehensive synth library for producing synthesizers, organs and effects.  Most of the code is open source, but there are certain key elements that are provided only in pre-built library form.

    It provides libraries for the following microcontrollers:

    • ESP32
    • ESP8266
    • XIAO SAMD21
    • Teensy 4.1
    • Daisy Seed
    • Raspberry Pi Pico RP2040
    • STM32F407

    As well as the synthesizer core oscillators there are modules for arpeggiators, effects, meters, scopes, and MIDI file playing.  Here are some example builds using the library:

    Although it isn’t fully open source, this non-the-less looks like it would be worth taking a more detailed look.  The provided videos of Marcel playing are particularly excellent.

    MIDI Controller Libraries

    There are a number of Arduino libraries for building MIDI controllers. Here are a selection of some that I’ve found so far.

    OpenDesk MIDI Platformhttps://github.com/shanteacontrols/OpenDeck

    This is a set of firmware and two official PCB designs for MIDI controllers. In addition to the official boards, it also supports many microcontrollers, including:

    • Arduino Mega 2560
    • Arduino Nano 33 BLE
    • Raspberry Pi Pico
    • XIAO RP2040
    • Teensy++ 2.0

    And many others. It includes a web-based configuration utility for defining the MIDI commands for the controls.  Official boards are available on Tindie and you can read more about them here: https://shanteacontrols.com/.

    It supports a range of buttons, encoders, potentiometers, force sensitive resistors, certain touchscreens and can provided feedback using LEDs and displays.

    Control Surfacehttps://github.com/tttapa/Control-Surface

    This is a general purpose library for building MIDI input and output control devices.  It supports a wide range of microcontrollers, including:

    • AVR (Uno, Mega, Leonardo).
    • Arduino Nano Every and 33.
    • Teensy.
    • ESP8266
    • ESP32
    • Raspberry Pi Pico

    It supports a range of MIDI transports, including serial, USB, “direct serial” (using Hairless MIDI) and MIDI BLE. It also supports a range of buttons, potentiometers, rotary encoders, switches, keyboard matrices, and so on and can provide visual feedback using a range of LEDS and displays.  It has built-in support for multiplexers, shift registers and LED drivers.

    It includes a huge number of example projects to browse.

    MIDIPalhttps://github.com/pichenettes/midipal

    This is a “MIDI Swiss Army Knife” that, with the additional of a display and rotary encoder, can provide a wide range of MIDI processing functions.  It includes an editor application for programming MIDI filters.

    This is a “native” AVR application, not for the Arduino environment.

    Notes and Volts MIDI Controllerhttps://www.notesandvolts.com/2016/04/arduino-midi-controller-buttons.html

    This is provided for completeness as it is a fairly common codebase for people to find and use with an Arduino. It supports a range of potentiometers and buttons and makes the task of configuring them as a MIDI control device relatively straight forward.

    Closing Thoughts

    As I say, this post is really almost a bit of a “to-do list” of things that look interesting and that I might try to take a more detailed look at, at some point.

    If you have experience of any of these frameworks or libraries; or have suggestions of others that might be worth a look, do let me know in the comments!

    Kevin

    #ArduinoAudioTools #ControlSurface #dac #esp32 #fmSynthesis #i2s #midi #midiController #MIDIPal #MLSynthTools #mozzi #OpenDesk #pwm #rp2040 #samd21 #synthesis #xiao