# DAC

Published articles for DAC.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Implementation of the HDA Link interface on RP2040

DevFeed: [Implementation of the HDA Link interface on RP2040](<https://devfeed.tech/articles/implementation-of-the-hda-link-interface-on-rp2040-100708.md>)

Original publisher: [Read original article](<https://blog.adafruit.com/2026/10/26/implementation-of-the-hda-link-interface-on-rp2040/>)

Author: Anne Barela

Published: 2026-10-26T19:08:40Z

Content type: article

Language: en

Sources: [Adafruit Industries](<https://devfeed.tech/sources/adafruit-industries-makers-hackers-artists-designers-and-engineers.md>)

Topics: [interface implementation](<https://devfeed.tech/topics/interface-implementation.md>)

Tags: [audio](<https://devfeed.tech/tags/audio.md>), [codec](<https://devfeed.tech/tags/codec.md>), [dac](<https://devfeed.tech/tags/dac.md>), [driving](<https://devfeed.tech/tags/driving.md>), [fpga](<https://devfeed.tech/tags/fpga.md>), [implementation](<https://devfeed.tech/tags/implementation.md>), [intel](<https://devfeed.tech/tags/intel.md>), [interface](<https://devfeed.tech/tags/interface.md>), [post](<https://devfeed.tech/tags/post.md>), [rp2040](<https://devfeed.tech/tags/rp2040.md>), [sound](<https://devfeed.tech/tags/sound.md>), [timing](<https://devfeed.tech/tags/timing.md>), [uses](<https://devfeed.tech/tags/uses.md>)

### AI overview

An RP2040 can drive an Intel HDA (Azalia) codec directly, without a chipset or FPGA, using its PIO blocks to meet the link's tight timing. HDA uses four wires and supports up to 15 channels in each direction. The implementation assigns separate PIO state machines to SDO, SYNC, and SDI (which also generates BCLK), plus a fourth to set the codec's bus address at startup. Core 1 packs and unpacks samples because audio data is not aligned to 32-bit boundaries. The demo drives all 10 DAC channels of an ALC889 with 192 kHz sine waves; overclocking to a 32 MHz BCLK enabled 256 kHz sampling, but the codec became hot. The excerpt does not provide the full implementation details.

### Source excerpt

A post on habr.com documents an RP2040 driving an Intel High Definition Audio codec directly, with no chipset and no FPGA. HDA, also called Azalia, uses four wires and supports up to 15 channels in and 15 out, well past the two in, two out that I²S usually gives you. The hard part is timing. [...]

## The MSX Gets A New Sound Expansion Cartridge

DevFeed: [The MSX Gets A New Sound Expansion Cartridge](<https://devfeed.tech/articles/the-msx-gets-a-new-sound-expansion-cartridge-97772.md>)

Original publisher: [Read original article](<https://hackaday.com/2026/10/23/the-msx-gets-a-new-sound-expansion-cartridge/>)

Author: Zoe Skyforest

Published: 2026-10-23T15:30:41Z

Content type: news

Language: en

Sources: [Hackaday](<https://devfeed.tech/sources/hackaday.md>)

Topics: [upgrade](<https://devfeed.tech/topics/upgrade.md>), [mini PC with PCIe](<https://devfeed.tech/topics/mini-pc-with-pcie.md>)

Tags: [accessories](<https://devfeed.tech/tags/accessories.md>), [audio](<https://devfeed.tech/tags/audio.md>), [build](<https://devfeed.tech/tags/build.md>), [capabilities](<https://devfeed.tech/tags/capabilities.md>), [chip](<https://devfeed.tech/tags/chip.md>), [computer](<https://devfeed.tech/tags/computer.md>), [dac](<https://devfeed.tech/tags/dac.md>), [fm-synthesis](<https://devfeed.tech/tags/fm-synthesis.md>), [generator](<https://devfeed.tech/tags/generator.md>), [machines](<https://devfeed.tech/tags/machines.md>), [mixer](<https://devfeed.tech/tags/mixer.md>), [mono](<https://devfeed.tech/tags/mono.md>), [msx](<https://devfeed.tech/tags/msx.md>), [music](<https://devfeed.tech/tags/music.md>), [opn3](<https://devfeed.tech/tags/opn3.md>), [retro](<https://devfeed.tech/tags/retro.md>), [retrocomputing](<https://devfeed.tech/tags/retrocomputing.md>), [software](<https://devfeed.tech/tags/software.md>), [sound](<https://devfeed.tech/tags/sound.md>), [ssg](<https://devfeed.tech/tags/ssg.md>), [stereo](<https://devfeed.tech/tags/stereo.md>), [yamaha](<https://devfeed.tech/tags/yamaha.md>)

### AI overview

The Misato MSX is a build-it-yourself sound expansion cartridge for MSX computers, designed by Ricardo Suzuki. It uses a Yamaha YMF288 OPN3 chip, providing three SSG channels, six FM channels, and six rhythm channels, paired with a DAC for synthesized audio. It can play OPN music or support composition with compatible software. Audio is available through the cartridge's stereo line out or mixed to mono through the MSX's internal mixer.

### Source excerpt

If we're honest, there aren't a whole lot of accessories coming out for the MSX computer line this holiday period. There is, however, a new sound expansion cartridge for the ...read more

## 5 GHz Drone Video, With An ESP32

DevFeed: [5 GHz Drone Video, With An ESP32](<https://devfeed.tech/articles/5-ghz-drone-video-with-an-esp32-91415.md>)

Original publisher: [Read original article](<https://hackaday.com/2026/10/20/5-ghz-drone-video-with-an-esp32/>)

Author: Jenny List

Published: 2026-10-21T05:00:05Z

Content type: news

Language: en

Sources: [Hackaday](<https://devfeed.tech/sources/hackaday.md>)

Topics: [ESP32-C5](<https://devfeed.tech/topics/esp32-c5.md>), [ESP32](<https://devfeed.tech/topics/esp32.md>)

Tags: [analog](<https://devfeed.tech/tags/analog.md>), [analog-video](<https://devfeed.tech/tags/analog-video.md>), [dac](<https://devfeed.tech/tags/dac.md>), [drone](<https://devfeed.tech/tags/drone.md>), [drone-hacks](<https://devfeed.tech/tags/drone-hacks.md>), [drones](<https://devfeed.tech/tags/drones.md>), [esp32](<https://devfeed.tech/tags/esp32.md>), [esp32-c5](<https://devfeed.tech/tags/esp32-c5.md>), [latency](<https://devfeed.tech/tags/latency.md>), [low-latency](<https://devfeed.tech/tags/low-latency.md>), [radio-hacks](<https://devfeed.tech/tags/radio-hacks.md>), [receiver](<https://devfeed.tech/tags/receiver.md>), [sdr](<https://devfeed.tech/tags/sdr.md>), [software-defined-radio](<https://devfeed.tech/tags/software-defined-radio.md>), [video](<https://devfeed.tech/tags/video.md>)

### AI overview

A Seeed Studio Xiao ESP32-C5 uses the chip's software-defined radio capability to receive and demodulate 5 GHz analog FM drone video. A resistor-ladder DAC outputs the video; a button interface selects channels, while a serial link provides more options. The excerpt says analog video avoids the digital signal's abrupt picture loss in poor radio propagation and offers very low latency, but leaves open whether latency in the SDR receiver affects usability.

### Source excerpt

With the ESP32 series of microcontrollers having had hidden software-defined radio (SDR) facility revealed, we're now moving on from the announcement into projects making use of the finding. [Twotoz] has ...read more

## Why Heat Is Becoming A Bigger Chip Design Issue

DevFeed: [Why Heat Is Becoming A Bigger Chip Design Issue](<https://devfeed.tech/articles/why-heat-is-becoming-a-bigger-chip-design-issue-86834.md>)

Original publisher: [Read original article](<https://semiengineering.com/why-heat-is-becoming-a-bigger-chip-design-issue/>)

Author: Ed Sperling

Published: 2026-10-14T07:01:20Z

Content type: article

Language: en

Sources: [Semiconductor Engineering](<https://devfeed.tech/sources/semiconductor-engineering.md>)

Topics: [Chip design](<https://devfeed.tech/topics/chip-design.md>), [Software Engineering](<https://devfeed.tech/topics/software-engineering.md>), [AI Architecture](<https://devfeed.tech/topics/ai-architecture.md>)

Tags: [3d-dram](<https://devfeed.tech/tags/3d-dram.md>), [3d-ic](<https://devfeed.tech/tags/3d-ic.md>), [3d-ics](<https://devfeed.tech/tags/3d-ics.md>), [ai-chips](<https://devfeed.tech/tags/ai-chips.md>), [chip-design](<https://devfeed.tech/tags/chip-design.md>), [cpu](<https://devfeed.tech/tags/cpu.md>), [dac](<https://devfeed.tech/tags/dac.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [heat](<https://devfeed.tech/tags/heat.md>), [keysight-eda](<https://devfeed.tech/tags/keysight-eda.md>), [low-power-high-performance](<https://devfeed.tech/tags/low-power-high-performance.md>), [round-tables](<https://devfeed.tech/tags/round-tables.md>), [semiconductor](<https://devfeed.tech/tags/semiconductor.md>), [siemens-eda](<https://devfeed.tech/tags/siemens-eda.md>), [silvaco](<https://devfeed.tech/tags/silvaco.md>), [synopsys](<https://devfeed.tech/tags/synopsys.md>), [top-stories](<https://devfeed.tech/tags/top-stories.md>), [transient-heat](<https://devfeed.tech/tags/transient-heat.md>), [vinci](<https://devfeed.tech/tags/vinci.md>)

### AI overview

Semiconductor Engineering's discussion examines thermal challenges in increasingly complex chip designs, including stacked 3D-ICs. The participants describe balancing voltage, timing, power, cooling, and material choices through coupled simulations, and discuss how AI agents and GPU-accelerated tools could help engineers analyze these interactions. They emphasize the need for accurate, calibrated models and coordination across engineering disciplines.

### Source excerpt

Increasing complexity requires thermal, electrical, and mechanical effects to be analyzed together. The post Why Heat Is Becoming A Bigger Chip Design Issue appeared first on Semiconductor Engineering.

## Playing audio files in a Pi Pico without a DAC

DevFeed: [Playing audio files in a Pi Pico without a DAC](<https://devfeed.tech/articles/playing-audio-files-in-a-pi-pico-without-a-dac-20634.md>)

Original publisher: [Read original article](<http://antirez.com/news/143>)

Author: Antirez

Published: 2024-03-06T10:52:34Z

Content type: tutorial

Language: en

Sources: [Antirez](<https://devfeed.tech/sources/antirez.md>)

Topics: [MicroPython](<https://devfeed.tech/topics/micropython.md>)

Tags: [audio](<https://devfeed.tech/tags/audio.md>), [build](<https://devfeed.tech/tags/build.md>), [build-system](<https://devfeed.tech/tags/build-system.md>), [cmake](<https://devfeed.tech/tags/cmake.md>), [connectivity](<https://devfeed.tech/tags/connectivity.md>), [dac](<https://devfeed.tech/tags/dac.md>), [data-sheet](<https://devfeed.tech/tags/data-sheet.md>), [embedded](<https://devfeed.tech/tags/embedded.md>), [file](<https://devfeed.tech/tags/file.md>), [files](<https://devfeed.tech/tags/files.md>), [mcu](<https://devfeed.tech/tags/mcu.md>), [micropython](<https://devfeed.tech/tags/micropython.md>), [pico](<https://devfeed.tech/tags/pico.md>), [pin](<https://devfeed.tech/tags/pin.md>), [play](<https://devfeed.tech/tags/play.md>), [pwm](<https://devfeed.tech/tags/pwm.md>), [raspberry](<https://devfeed.tech/tags/raspberry.md>), [sdk](<https://devfeed.tech/tags/sdk.md>), [sound](<https://devfeed.tech/tags/sound.md>), [square](<https://devfeed.tech/tags/square.md>)

### AI overview

A Raspberry Pi Pico can approximate audio output without a DAC by using high-frequency PWM: varying the duty cycle changes the pin's average voltage to represent successive samples. The excerpt converts a WAV file to unsigned 8-bit raw PCM at 24 kHz with ffmpeg, copies it to the board with mpremote, then reads it in 4096-byte blocks and maps each sample to PWM with `sample<<8`. The MicroPython loop occupies the program while playing, and its playback rate is not precisely synchronized to the file's sample rate; the author adds repeated `x=1` statements to adjust the pitch by ear. The author reports decent results with 8-bit audio and notes 16-bit conversion could be tried. A short bonus example builds and repeatedly outputs a sine wave using PWM.

### Source excerpt

The Raspberry Pico is suddenly becoming my preferred chip for embedded development. It is well made, durable hardware, with a ton of features that appear designed with smartness and passion (the state machines driving the GPIOs are a killer feature!). Its main weakness, the lack of connectivity, is now resolved by the W variant. The data sheet is excellent and documents every aspect of the chip. Moreover, it is well supported by MicroPython (which I'm using a lot), and the C SDK environment is decent, even if full of useless complexities like today fashion demands: a cmake build system that in turn generates a Makefile, files to define this and that (used libraries, debug outputs, ...), and in general a huge overkill for the goal of compiling tiny programs for tiny devices. No, it's worse than that: all this complexity to generate programs for a FIXED hardware with a fixed set of features (if not for the W / non-W variant). Enough with the rant about how much today software sucks, but it must be remembered. One of the cool things one wants to do with an MCU like that, is generating some sound. The most obvious way to do this is using the built-in PWM feature of the chip. The GPIOs can be configured to just alterante between zero and one at the desired frequency, like that: from machine import Pin, PWM pwm = PWM(Pin(1)) pwm.freq(400) pwm.duty_u16(1000) Assuming you connected a piezo to GND and pin 1 of your Pico, you will hear a square wave sound at 400hz of frequency. Now, there are little sounds as terrible to hear as square waves. Maybe we can do better. I'll skip all the intermediate steps here, like producing a sin wave, and directly jump to playing a wav file. Once you see how to do that, you can easily generate your own other waves (sin, noise, envelops for such waveforms and so forth). Now you are likely asking yourself: how can I generate the complex wave forms to play a wav file, if the Pico can only switch the pin high or low? A proper non square waveform is