Hw-044 Datasheet May 2026

Raspberry Pi can use the HW-044 via the device tree overlay:

| HW-044 Pin | ESP32 GPIO Pin | |------------|----------------| | VIN | 5V (or VIN) | | GND | GND | | BCLK | GPIO 26 | | LRC | GPIO 25 | | DIN | GPIO 22 | | GAIN | Float (default) or to VIN/GND | | SD_MODE | Connect to 3.3V (High) | 4.2 Connection to Arduino Uno (Using I²S Library) Note: Standard Arduino Uno does not support I²S natively on all pins. Use an Arduino Due or Zero for best results, or a software bit-banging library.

*The MAX98357 supports 3dB and 6dB, but the HW-044 only exposes these three options via the GAIN pin. hw-044 datasheet

| Symptom | Likely Cause | Solution | |---------|--------------|----------| | No sound, PWR LED off | No power or reversed VIN/GND | Check voltage at VIN pin. Reverse polarity kills the IC. | | Humming or high noise | Shared ground with high-current devices | Create a star ground. Separate digital and power grounds. | | Distorted audio at high volume | Clipping due to high gain | Reduce GAIN setting (float or GND). Lower source volume. | | Clicking or popping | Sample rate mismatch or BCLK unstable | Ensure I²S clock is continuous. Use internal PLL if available. | | Only left or right channel missing | Mono mode enabled (normal) | HW-044 is mono. Combine channels in software. | | Amplifier gets very hot | Speaker impedance too low (<4Ω) or short circuit | Use 4Ω–8Ω speaker. Check SPK+ to SPK- resistance. | | No sound with ESP32 | Wrong I²S pins or format | Confirm BCLK/LRC/DIN assignments. Use i2s_std driver. | How does the HW-044 compare to similar modules?

void loop() audio.loop();

Audio audio;

audio.setPinout(I2S_BCLK, I2S_LRC, I2S_DIN); audio.setVolume(21); // 0-21 audio.connecttohost("http://example.com/stream.mp3"); Raspberry Pi can use the HW-044 via the

The HW-044 expects MSB-first , left-justified data with 1 BCLK delay after LRC transition (standard I²S). Do not invert BCLK or LRC unless your microcontroller driver specifically requires it. 7. Software Libraries & Code Examples To use the HW-044, you need a microcontroller that can generate I²S. Below are minimal examples for two popular platforms. 7.1 ESP32 with Arduino IDE #include <WiFi.h> #include <Audio.h> // I2S pins #define I2S_BCLK 26 #define I2S_LRC 25 #define I2S_DIN 22