<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Popular Topics]]></title><description><![CDATA[A list of topics that are sorted by post count]]></description><link>https://community.m5stack.com/popular/weekly</link><generator>RSS for Node</generator><lastBuildDate>Tue, 28 Apr 2026 21:11:33 GMT</lastBuildDate><atom:link href="https://community.m5stack.com/popular/weekly.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 22 Apr 2026 04:32:05 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Atomic Audio Base with M5ATOMS3R]]></title><description><![CDATA[I have been able to get a program to work that uses the M5EchoBase library but no luck using the unified library. For example the simple program below doesn't work.
#include &lt;M5Unified.h&gt;

void setup() {
  // 1. Initialize M5Unified
   delay(1000);  // Delay for a moment to allow the system to stabilize.
    auto cfg  = M5.config();
    cfg.serial_baudrate = 115200;
    M5.begin(cfg);
 

  // 2. Configure the Speaker for the Atomic Audio Base (ES8311)
  // We access the speaker configuration directly via M5.Speaker.config()
  auto spk_cfg = M5.Speaker.config();
  
  // Set pins for Atomic Audio Base (ES8311)
  spk_cfg.pin_bck = 8;   // BCLK
  spk_cfg.pin_ws = 6;    // LRCK (WS)
  spk_cfg.pin_data_out = 5; // DAC (DOUT)
  spk_cfg.i2s_port = I2S_NUM_0;
  
  // Configure for external codec (not internal DAC)
  spk_cfg.use_dac = false; 
  spk_cfg.sample_rate = 44100; 
  
  // Apply the configuration
  M5.Speaker.config(spk_cfg);
  
  // 3. Start the speaker
  M5.Speaker.begin();
  
  // 4. Set volume (0-255)
  M5.Speaker.setVolume(128);
}

void loop() {
  M5.update();

  // Play a 1000 Hz tone for 1000 milliseconds (1 second)
  M5.Speaker.tone(1000, 1000);
  // Wait for the tone to finish
  delay(1000);
  
  // Small delay before next loop
  delay(1000);
}

Is there no way to set up the ES8311 codec without using M5EchoBase? strangely if I run the program below then load the above program the tone works? But I can't stick the M5.Speaker.tone(1000, 1000); command in the program below and have it work. Does anyone know how to play a tone using only the Unified library from an AtomS3R into a Atomic Audio Base (ES8311 codec)?
#include &lt;M5Unified.h&gt;
#include &lt;M5EchoBase.h&gt;

#if defined(CONFIG_IDF_TARGET_ESP32S3)
#define RECORD_SIZE (1024 * 400)
#elif defined(CONFIG_IDF_TARGET_ESP32)
#define RECORD_SIZE (1024 * 400)
#endif

#if (ESP_IDF_VERSION &gt;= ESP_IDF_VERSION_VAL(5, 0, 0))
M5EchoBase echobase;
#else
M5EchoBase echobase(I2S_NUM_0);
#endif

static uint8_t *buffer = nullptr;  // Pointer to hold the audio buffer.

void setup()
{
    delay(1000);  // Delay for a moment to allow the system to stabilize.
    auto cfg            = M5.config();
    cfg.serial_baudrate = 115200;
    M5.begin(cfg);

    // Initialize the EchoBase with ATOMS3 pinmap.
#if defined(CONFIG_IDF_TARGET_ESP32S3)
    if (!echobase.init(44100 /*Sample Rate*/, 38 /*I2C SDA*/, 39 /*I2C SCL*/, 7 /*I2S DIN*/, 6 /*I2S WS*/,
                       5 /*I2S DOUT*/, 8 /*I2S BCK*/, Wire) != 0) {
        Serial.println("Failed to initialize EchoBase!");
        while (true) {
            delay(1000);
        }
    }
#elif defined(CONFIG_IDF_TARGET_ESP32)
    // Initialize the EchoBase with ATOM pinmap.
    if (!echobase.init(44100 /*Sample Rate*/, 25 /*I2C SDA*/, 21 /*I2C SCL*/, 23 /*I2S DIN*/, 19 /*I2S WS*/, 22 /*I2S
    DOUT*/, 33 /*I2S BCK*/, Wire) != 0) {
        Serial.println("Failed to initialize EchoBase!");
        while (true) {
            delay(1000);
        }
    }
#endif

    echobase.setSpeakerVolume(80);             // Set speaker volume to 70%.
    echobase.setMicGain(ES8311_MIC_GAIN_0DB);  // Set microphone gain to 0dB.

    buffer = (uint8_t *)malloc(RECORD_SIZE);  // Allocate memory for the record buffer.
    // Check if memory allocation was successful.
    if (buffer == nullptr) {
        // If memory allocation fails, enter an infinite loop.
        while (true) {
            Serial.println("Failed to allocate memory :(");
            delay(1000);
        }
    }

    Serial.println("EchoBase ready, start recording and playing!");
 //  M5.Speaker.tone(2000, 2000);
 //  delay(2000);
}

void loop()
{
 
    Serial.println("Start recording...");
    // Recording
    echobase.setMute(false);
    echobase.record(buffer, RECORD_SIZE);  // Record audio into buffer.
    delay(100);

    Serial.println("Start playing...");
    // Playing
    echobase.setMute(false);
    delay(10);
    echobase.play(buffer, RECORD_SIZE);  // Play audio from buffer.
    //M5.Speaker.playRaw(buffer, RECORD_SIZE, 44100, false, 1, 0);
    delay(100);
}


]]></description><link>https://community.m5stack.com/topic/8188/atomic-audio-base-with-m5atoms3r</link><guid isPermaLink="true">https://community.m5stack.com/topic/8188/atomic-audio-base-with-m5atoms3r</guid><dc:creator><![CDATA[jimruxton]]></dc:creator><pubDate>Wed, 22 Apr 2026 04:32:05 GMT</pubDate></item><item><title><![CDATA[Paper S3 epub reader with usb disk mode]]></title><description><![CDATA[@L4700 Hi. Thx for testing. Frankly project happened just for me, because I have so many eReader but none was so light. Now I bought next Paper S3 device to my wife is my new tester :D. Future is unsure, for me - there's possibly all I need. And for others - there's slow  feedback.
What I am thinking about :

HW improve - still trying to figure out some fancy Screen illumination fo this HW.
Wifi portal for transfering books - USB disk mode is very slow, and removing SD card is akward.
Sync readering with other readers (maybe Calibre, not sure now)
Optimization (MCU is slow, but I see still some potencial.
Secondly thinking about future porting to newer models - but it will need some donations to buy new HW. Until this time I have just one donate from my boss :D
Sry for my English.

]]></description><link>https://community.m5stack.com/topic/8091/paper-s3-epub-reader-with-usb-disk-mode</link><guid isPermaLink="true">https://community.m5stack.com/topic/8091/paper-s3-epub-reader-with-usb-disk-mode</guid><dc:creator><![CDATA[erikbotta]]></dc:creator><pubDate>Wed, 18 Feb 2026 16:39:36 GMT</pubDate></item><item><title><![CDATA[Where is the IMU (MPU6886) located in the M5Stack Fire?]]></title><description><![CDATA[@felmue That helps a lot, thank you!
]]></description><link>https://community.m5stack.com/topic/8189/where-is-the-imu-mpu6886-located-in-the-m5stack-fire</link><guid isPermaLink="true">https://community.m5stack.com/topic/8189/where-is-the-imu-mpu6886-located-in-the-m5stack-fire</guid><dc:creator><![CDATA[ShawnHymel]]></dc:creator><pubDate>Tue, 21 Apr 2026 20:45:50 GMT</pubDate></item><item><title><![CDATA[UiFlow 2.0 discuss(how-to, bug, feature request or sometings)]]></title><description><![CDATA[@RBOUMAN58
Got the problem solved, burned the 2.4.4 firmware using M5Burner, problems gone... programs are working again
]]></description><link>https://community.m5stack.com/topic/4955/uiflow-2-0-discuss-how-to-bug-feature-request-or-sometings</link><guid isPermaLink="true">https://community.m5stack.com/topic/4955/uiflow-2-0-discuss-how-to-bug-feature-request-or-sometings</guid><dc:creator><![CDATA[RBOUMAN58]]></dc:creator><pubDate>Sun, 08 Jan 2023 06:03:18 GMT</pubDate></item><item><title><![CDATA[Stack Chan unboxing]]></title><link>https://community.m5stack.com/topic/8192/stack-chan-unboxing</link><guid isPermaLink="true">https://community.m5stack.com/topic/8192/stack-chan-unboxing</guid><pubDate>Tue, 28 Apr 2026 10:37:25 GMT</pubDate></item><item><title><![CDATA[Custom Cables]]></title><link>https://community.m5stack.com/topic/8191/custom-cables</link><guid isPermaLink="true">https://community.m5stack.com/topic/8191/custom-cables</guid><pubDate>Sun, 26 Apr 2026 18:39:32 GMT</pubDate></item><item><title><![CDATA[Blue Chronos v1.1.0 - Precision Timekeeping for Cardputer]]></title><description><![CDATA[@Blue_Mac think you meant to type Blue_Chronos in the url instead of Blue-Chronos as the link provided is incorrect
]]></description><link>https://community.m5stack.com/topic/8185/blue-chronos-v1-1-0-precision-timekeeping-for-cardputer</link><guid isPermaLink="true">https://community.m5stack.com/topic/8185/blue-chronos-v1-1-0-precision-timekeeping-for-cardputer</guid><dc:creator><![CDATA[Pt_Royale]]></dc:creator><pubDate>Wed, 15 Apr 2026 06:32:05 GMT</pubDate></item><item><title><![CDATA[M5StickS3]]></title><link>https://community.m5stack.com/topic/8190/m5sticks3</link><guid isPermaLink="true">https://community.m5stack.com/topic/8190/m5sticks3</guid><pubDate>Fri, 24 Apr 2026 05:24:48 GMT</pubDate></item></channel></rss>