You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I tried to use the following code to play some wavfiles but unfortunatly it didn't work.
The MicroPython runtime keep complaining about I2S.MODE_MASTER | I2S.MODE_TX | I2S.MODE_DAC_BUILT_IN that neither of them is part of I2S module. could you please point me to an example which works on m5stack Core basic (The EOL version).
from machine import I2S, SDCard, Pin
from m5stack import *
import os, uos
from wav import wave
#mount the sd card
sd = SDCard(slot = 2, sck = Pin(23), miso = Pin(33), mosi = Pin(19), freq = 10000000)
#initialize the I2S device
i2s = I2S( mode = I2S.MODE_MASTER | I2S.MODE_TX | I2S.MODE_DAC_BUILT_IN,
rate = 16000,
bits = 16,
channel_format = I2S.CHANNEL_ONLY_LEFT,
data_format = I2S.FORMAT_I2S_MSB)
#create a function to play the wav
def wav_player(fname):
wav = wave.open(fname)
i2s.set_dac_mode(I2S.DAC_RIGHT_EN)
i2s.sample_rate(wav.getframerate())
i2s.bits(wav.getsampwidth() * 8)
i2s.nchannels(wav.getnchannels())
i2s.volume(20)
while True:
data = wav.readframes(1024)
if len(data) > 0:
i2s.write(data)
else:
wav.close()
break
# Playing WAV audio file
lcd.clear()
lcd.print('working',0,0,0xffffff)
try:
uos.mountsd(sd, '/sd')
except:
#os.mountsd()
pass
speaker.setVolume(2)
#kill the weird start noise glitch
i2s.stop()
#point the directory to the files you have on your sd card - works best with short low file size wavs
while True:
if btnA.wasPressed():
wav_player('/flash/res/yourfile.wav')
i2s.stop()
if btnB.wasPressed():
wav_player('/sd/yourOtherFile.wav')
i2s.stop()
if btnC.wasPressed():
wav_player('/sd/anotherfile.wav')
i2s.stop()
To reproduce
Use M5Burner-v3-beta-win-x64 to flash UiFlow v1.10.7.1 to the m5stack core basic
The text was updated successfully, but these errors were encountered:
ExtremeGTX
changed the title
any valid example for M5Stack Core
any valid example for M5Stack Core play wave on Speaker
Nov 7, 2022
ExtremeGTX
changed the title
any valid example for M5Stack Core play wave on Speaker
Any valid example for M5Stack Core to play wave on Speaker
Nov 7, 2022
ExtremeGTX
changed the title
Any valid example for M5Stack Core to play wave on Speaker
Any valid example for M5Stack Core to play wav on Speaker
Nov 7, 2022
I don't think Core has any I2S hardware in the first place. I think it plays analog audio directly from ESP32 pin 25, which supports direct digital-to-analog output. There's a Speaker class in the library that looks like it can play wave audio just by loosely banging it out to the pin.
Describe the bug
I tried to use the following code to play some wavfiles but unfortunatly it didn't work.
The MicroPython runtime keep complaining about
I2S.MODE_MASTER | I2S.MODE_TX | I2S.MODE_DAC_BUILT_IN
that neither of them is part ofI2S
module. could you please point me to an example which works on m5stack Core basic (The EOL version).To reproduce
Run
Expected behavior
The code should run without displaying python errors.
Screenshots
No response
Environment
Additional context
No response
Issue checklist
The text was updated successfully, but these errors were encountered: