Hi,
I am trying to use I2S Stereo Decoder - UDA1334A with Metro M0 and I2S MEMS microphone,
Can you send me an example of a working code or information I could not find in the forums and the website...
so I will have the basic knowledge?
Thank you
I2S Stereo Decoder with Metro express
Moderators: adafruit_support_bill, adafruit
Please be positive and constructive with your questions and comments.
- mikeysklar
- Posts: 13936
- Joined: Mon Aug 01, 2016 8:10 pm
Re: I2S Stereo Decoder with Metro express
Are you using Arduino or CircuitPython on your Metro M0?
Here are the general links that include all platforms:
https://learn.adafruit.com/adafruit-i2s ... r-uda1334a
https://learn.adafruit.com/adafruit-i2s ... e-breakout
Here are the general links that include all platforms:
https://learn.adafruit.com/adafruit-i2s ... r-uda1334a
https://learn.adafruit.com/adafruit-i2s ... e-breakout
- Mor0051
- Posts: 4
- Joined: Wed Mar 02, 2022 3:18 am
Re: I2S Stereo Decoder with Metro express
thanks for the help.
I am using the Arduino app,
should I use CircuitPython?
I am using the Arduino app,
should I use CircuitPython?
- Mor0051
- Posts: 4
- Joined: Wed Mar 02, 2022 3:18 am
Re: I2S Stereo Decoder with Metro express
I am trying this code:
and I getting these errors:
Code: Select all
/*
This example reads audio data from an Invensense's ICS43432 I2S microphone
breakout board, and prints out the amplitude to the Serial console. The
Serial Plotter built into the Arduino IDE can be used to plot the audio
amplitude data (Tools -> Serial Plotter)
Circuit:
* Arduino Zero, MKRZero or MKR1000 board
* ICS43432:
* GND connected GND
* 3.3V connected 3.3V (Zero) or VCC (MKR1000, MKRZero)
* WS connected to pin 0 (Zero) or pin 3 (MKR1000, MKRZero)
* CLK connected to pin 1 (Zero) or pin 2 (MKR1000, MKRZero)
* SD connected to pin 9 (Zero) or pin A6 (MKR1000, MKRZero)
created 23 November 2016
by Sandeep Mistry
*/
#include <ArduinoSound.h>
// create an amplitude analyzer to be used with the I2S input
AmplitudeAnalyzer amplitudeAnalyzer;
void setup() {
// Open serial communications and wait for port to open:
// A baud rate of 115200 is used instead of 9600 for a faster data rate
// on non-native USB ports
Serial.begin(115200);
while (!Serial) {
; // wait for serial port to connect. Needed for native USB port only
}
// setup the I2S audio input for 44.1 kHz with 32-bits per sample
if (!AudioInI2S.begin(44100, 32)) {
Serial.println("Failed to initialize I2S input!");
while (1); // do nothing
}
// configure the I2S input as the input for the amplitude analyzer
if (!amplitudeAnalyzer.input(AudioInI2S)) {
Serial.println("Failed to set amplitude analyzer input!");
while (1); // do nothing
}
}
void loop() {
// check if a new analysis is available
if (amplitudeAnalyzer.available()) {
// read the new amplitude
int amplitude = amplitudeAnalyzer.read();
// print out the amplititude to the serial monitor
Serial.println(amplitude);
}
}
Code: Select all
Arduino: 1.8.19 (Windows Store 1.8.57.0) (Windows 10), Board: "Arduino Uno"
WARNING: library ArduinoSound claims to run on samd architecture(s) and may be incompatible with your current board which runs on avr architecture(s).
In file included from C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\AudioInI2S.cpp:19:0:
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src/I2S.h:115:2: error: #error "I2S is not supported on your board!"
#error "I2S is not supported on your board!"
^~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\AudioInI2S.cpp: In member function 'int AudioInI2SClass::begin(long int, int)':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\AudioInI2S.cpp:36:8: error: 'I2S' was not declared in this scope
if (!I2S.begin(I2S_PHILIPS_MODE, sampleRate, bitsPerSample)) {
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\AudioInI2S.cpp:44:3: error: 'I2S' was not declared in this scope
I2S.onReceive(AudioInI2SClass::onI2SReceive);
^~~
In file included from C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\AudioOutI2S.cpp:19:0:
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src/I2S.h:115:2: error: #error "I2S is not supported on your board!"
#error "I2S is not supported on your board!"
^~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\AudioInI2S.cpp: In member function 'virtual void AudioInI2SClass::end()':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\AudioInI2S.cpp:58:3: error: 'I2S' was not declared in this scope
I2S.end();
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\AudioInI2S.cpp: In member function 'virtual int AudioInI2SClass::read(void*, size_t)':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\AudioInI2S.cpp:85:14: error: 'I2S' was not declared in this scope
int read = I2S.read(buffer, size);
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\AudioOutI2S.cpp: In member function 'virtual int AudioOutI2SClass::resume()':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\AudioOutI2S.cpp:84:3: error: 'I2S' was not declared in this scope
I2S.write(silence, sizeof(silence));
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\AudioOutI2S.cpp: In member function 'virtual int AudioOutI2SClass::stop()':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\AudioOutI2S.cpp:99:3: error: 'I2S' was not declared in this scope
I2S.end();
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\AudioOutI2S.cpp: In member function 'int AudioOutI2SClass::startPlayback(AudioIn&, bool)':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\AudioOutI2S.cpp:120:3: error: 'I2S' was not declared in this scope
I2S.onTransmit(AudioOutI2SClass::onI2STransmit);
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\AudioOutI2S.cpp: In member function 'void AudioOutI2SClass::onTransmit()':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\AudioOutI2S.cpp:169:7: error: 'I2S' was not declared in this scope
I2S.end();
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\AudioOutI2S.cpp:183:3: error: 'I2S' was not declared in this scope
I2S.write(data, n);
^~~
In file included from C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp:27:0:
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.h:115:2: error: #error "I2S is not supported on your board!"
#error "I2S is not supported on your board!"
^~~~~
In file included from C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp:22:0:
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/DMA.h:56:5: error: 'DmacDescriptor' does not name a type
DmacDescriptor _descriptors[NUM_DMA_CHANNELS] __attribute__ ((aligned (16)));
^~~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/DMA.h:57:5: error: 'DmacDescriptor' does not name a type
DmacDescriptor _descriptorsWriteBack[NUM_DMA_CHANNELS] __attribute__ ((aligned (16)));
^~~~~~~~~~~~~~
In file included from C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp:23:0:
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:25:27: error: expected ')' before '&' token
I2SDevice_SAMD21G18x(I2s& _i2s) :
^
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:235:12: error: 'I2s' does not name a type
volatile I2s &i2s;
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h: In member function 'void I2SDevice_SAMD21G18x::reset()':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:32:11: error: 'i2s' was not declared in this scope
while(i2s.SYNCBUSY.bit.SWRST);
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:33:5: error: 'i2s' was not declared in this scope
i2s.CTRLA.bit.SWRST = 1;
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h: In member function 'void I2SDevice_SAMD21G18x::disable()':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:37:11: error: 'i2s' was not declared in this scope
while(i2s.SYNCBUSY.bit.ENABLE);
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:38:5: error: 'i2s' was not declared in this scope
i2s.CTRLA.bit.ENABLE = 0;
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h: In member function 'void I2SDevice_SAMD21G18x::enable()':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:42:11: error: 'i2s' was not declared in this scope
while(i2s.SYNCBUSY.bit.ENABLE);
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:43:5: error: 'i2s' was not declared in this scope
i2s.CTRLA.bit.ENABLE = 1;
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h: In member function 'int I2SDevice_SAMD21G18x::glckId(int)':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:47:27: error: 'I2S_GCLK_ID_0' was not declared in this scope
return (index == 0) ? I2S_GCLK_ID_0 : I2S_GCLK_ID_1;
^~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:47:43: error: 'I2S_GCLK_ID_1' was not declared in this scope
return (index == 0) ? I2S_GCLK_ID_0 : I2S_GCLK_ID_1;
^~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h: In member function 'void I2SDevice_SAMD21G18x::setSerialClockSelectMasterClockDiv(int)':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:51:5: error: 'i2s' was not declared in this scope
i2s.CLKCTRL[index].bit.SCKSEL = I2S_CLKCTRL_SCKSEL_MCKDIV_Val;
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:51:37: error: 'I2S_CLKCTRL_SCKSEL_MCKDIV_Val' was not declared in this scope
i2s.CLKCTRL[index].bit.SCKSEL = I2S_CLKCTRL_SCKSEL_MCKDIV_Val;
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h: In member function 'void I2SDevice_SAMD21G18x::setSerialClockSelectPin(int)':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:55:5: error: 'i2s' was not declared in this scope
i2s.CLKCTRL[index].bit.SCKSEL = I2S_CLKCTRL_SCKSEL_SCKPIN_Val;
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:55:37: error: 'I2S_CLKCTRL_SCKSEL_SCKPIN_Val' was not declared in this scope
i2s.CLKCTRL[index].bit.SCKSEL = I2S_CLKCTRL_SCKSEL_SCKPIN_Val;
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h: In member function 'void I2SDevice_SAMD21G18x::setFrameSyncSelectSerialClockDiv(int)':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:59:5: error: 'i2s' was not declared in this scope
i2s.CLKCTRL[index].bit.FSSEL = I2S_CLKCTRL_FSSEL_SCKDIV_Val;
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:59:36: error: 'I2S_CLKCTRL_FSSEL_SCKDIV_Val' was not declared in this scope
i2s.CLKCTRL[index].bit.FSSEL = I2S_CLKCTRL_FSSEL_SCKDIV_Val;
^~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h: In member function 'void I2SDevice_SAMD21G18x::setFrameSyncSelectPin(int)':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:63:5: error: 'i2s' was not declared in this scope
i2s.CLKCTRL[index].bit.FSSEL = I2S_CLKCTRL_FSSEL_FSPIN_Val;
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:63:36: error: 'I2S_CLKCTRL_FSSEL_FSPIN_Val' was not declared in this scope
i2s.CLKCTRL[index].bit.FSSEL = I2S_CLKCTRL_FSSEL_FSPIN_Val;
^~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h: In member function 'void I2SDevice_SAMD21G18x::set0BitDelay(int)':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:67:5: error: 'i2s' was not declared in this scope
i2s.CLKCTRL[index].bit.BITDELAY = I2S_CLKCTRL_BITDELAY_LJ_Val;
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\FFTAnalyzer.cpp: In member function 'virtual int FFTAnalyzer::configure(AudioIn*)':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\FFTAnalyzer.cpp:89:54: warning: invalid conversion from 'int' to 'arm_cfft_radix4_instance_q15*' [-fpermissive]
if (ARM_MATH_SUCCESS != arm_rfft_init_q15(&_S15, _length, 0, 1)) {
^~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\FFTAnalyzer.cpp:89:67: error: too few arguments to function 'arm_status arm_rfft_init_q15(arm_rfft_instance_q15*, arm_cfft_radix4_instance_q15*, uint32_t, uint32_t, uint32_t)'
if (ARM_MATH_SUCCESS != arm_rfft_init_q15(&_S15, _length, 0, 1)) {
^
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:67:39: error: 'I2S_CLKCTRL_BITDELAY_LJ_Val' was not declared in this scope
i2s.CLKCTRL[index].bit.BITDELAY = I2S_CLKCTRL_BITDELAY_LJ_Val;
^~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\FFTAnalyzer.h:25:0,
from C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\FFTAnalyzer.cpp:21:
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src/arm_math.h:2509:14: note: declared here
arm_status arm_rfft_init_q15(
^~~~~~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\FFTAnalyzer.cpp:93:54: warning: invalid conversion from 'int' to 'arm_cfft_radix4_instance_q31*' [-fpermissive]
if (ARM_MATH_SUCCESS != arm_rfft_init_q31(&_S31, _length, 0, 1)) {
^~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\FFTAnalyzer.cpp:93:67: error: too few arguments to function 'arm_status arm_rfft_init_q31(arm_rfft_instance_q31*, arm_cfft_radix4_instance_q31*, uint32_t, uint32_t, uint32_t)'
if (ARM_MATH_SUCCESS != arm_rfft_init_q31(&_S31, _length, 0, 1)) {
^
In file included from C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\FFTAnalyzer.h:25:0,
from C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\FFTAnalyzer.cpp:21:
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src/arm_math.h:2539:14: note: declared here
arm_status arm_rfft_init_q31(
^~~~~~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h: In member function 'void I2SDevice_SAMD21G18x::set1BitDelay(int)':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:71:5: error: 'i2s' was not declared in this scope
i2s.CLKCTRL[index].bit.BITDELAY = I2S_CLKCTRL_BITDELAY_I2S_Val;
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:71:39: error: 'I2S_CLKCTRL_BITDELAY_I2S_Val' was not declared in this scope
i2s.CLKCTRL[index].bit.BITDELAY = I2S_CLKCTRL_BITDELAY_I2S_Val;
^~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h: In member function 'void I2SDevice_SAMD21G18x::setNumberOfSlots(int, int)':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:75:5: error: 'i2s' was not declared in this scope
i2s.CLKCTRL[index].bit.NBSLOTS = nbslots;
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h: In member function 'void I2SDevice_SAMD21G18x::setSlotSize(int, int)':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:81:8: error: 'i2s' was not declared in this scope
i2s.CLKCTRL[index].bit.SLOTSIZE = I2S_CLKCTRL_SLOTSIZE_32_Val;
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:81:42: error: 'I2S_CLKCTRL_SLOTSIZE_32_Val' was not declared in this scope
i2s.CLKCTRL[index].bit.SLOTSIZE = I2S_CLKCTRL_SLOTSIZE_32_Val;
^~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:85:42: error: 'I2S_CLKCTRL_SLOTSIZE_24_Val' was not declared in this scope
i2s.CLKCTRL[index].bit.SLOTSIZE = I2S_CLKCTRL_SLOTSIZE_24_Val;
^~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:89:42: error: 'I2S_CLKCTRL_SLOTSIZE_16_Val' was not declared in this scope
i2s.CLKCTRL[index].bit.SLOTSIZE = I2S_CLKCTRL_SLOTSIZE_16_Val;
^~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:93:42: error: 'I2S_CLKCTRL_SLOTSIZE_8_Val' was not declared in this scope
i2s.CLKCTRL[index].bit.SLOTSIZE = I2S_CLKCTRL_SLOTSIZE_8_Val;
^~~~~~~~~~~~~~~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h: In member function 'void I2SDevice_SAMD21G18x::setDataSize(int, int)':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:101:8: error: 'i2s' was not declared in this scope
i2s.SERCTRL[index].bit.DATASIZE = I2S_SERCTRL_DATASIZE_32_Val;
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:101:42: error: 'I2S_SERCTRL_DATASIZE_32_Val' was not declared in this scope
i2s.SERCTRL[index].bit.DATASIZE = I2S_SERCTRL_DATASIZE_32_Val;
^~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:105:42: error: 'I2S_SERCTRL_DATASIZE_24_Val' was not declared in this scope
i2s.SERCTRL[index].bit.DATASIZE = I2S_SERCTRL_DATASIZE_24_Val;
^~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\SDWaveFile.cpp: In member function 'void SDWaveFile::readHeader()':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\SDWaveFile.cpp:241:20: error: '__REV' was not declared in this scope
header.chunkId = __REV(header.chunkId);
^~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\SDWaveFile.cpp:241:20: note: suggested alternative: 'O_READ'
header.chunkId = __REV(header.chunkId);
^~~~~
O_READ
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:109:42: error: 'I2S_SERCTRL_DATASIZE_16_Val' was not declared in this scope
i2s.SERCTRL[index].bit.DATASIZE = I2S_SERCTRL_DATASIZE_16_Val;
^~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:113:42: error: 'I2S_SERCTRL_DATASIZE_8_Val' was not declared in this scope
i2s.SERCTRL[index].bit.DATASIZE = I2S_SERCTRL_DATASIZE_8_Val;
^~~~~~~~~~~~~~~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h: In member function 'void I2SDevice_SAMD21G18x::setSlotAdjustedRight(int)':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:119:5: error: 'i2s' was not declared in this scope
i2s.SERCTRL[index].bit.SLOTADJ = I2S_SERCTRL_SLOTADJ_RIGHT_Val;
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:119:38: error: 'I2S_SERCTRL_SLOTADJ_RIGHT_Val' was not declared in this scope
i2s.SERCTRL[index].bit.SLOTADJ = I2S_SERCTRL_SLOTADJ_RIGHT_Val;
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h: In member function 'void I2SDevice_SAMD21G18x::setSlotAdjustedLeft(int)':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:123:5: error: 'i2s' was not declared in this scope
i2s.SERCTRL[index].bit.SLOTADJ = I2S_SERCTRL_SLOTADJ_LEFT_Val;
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:123:38: error: 'I2S_SERCTRL_SLOTADJ_LEFT_Val' was not declared in this scope
i2s.SERCTRL[index].bit.SLOTADJ = I2S_SERCTRL_SLOTADJ_LEFT_Val;
^~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h: In member function 'void I2SDevice_SAMD21G18x::setClockUnit(int)':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:127:5: error: 'i2s' was not declared in this scope
i2s.SERCTRL[index].bit.CLKSEL = (index == 0) ? I2S_SERCTRL_CLKSEL_CLK0_Val : I2S_SERCTRL_CLKSEL_CLK1_Val;
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:127:52: error: 'I2S_SERCTRL_CLKSEL_CLK0_Val' was not declared in this scope
i2s.SERCTRL[index].bit.CLKSEL = (index == 0) ? I2S_SERCTRL_CLKSEL_CLK0_Val : I2S_SERCTRL_CLKSEL_CLK1_Val;
^~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:127:82: error: 'I2S_SERCTRL_CLKSEL_CLK1_Val' was not declared in this scope
i2s.SERCTRL[index].bit.CLKSEL = (index == 0) ? I2S_SERCTRL_CLKSEL_CLK0_Val : I2S_SERCTRL_CLKSEL_CLK1_Val;
^~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h: In member function 'void I2SDevice_SAMD21G18x::setTxMode(int)':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:131:5: error: 'i2s' was not declared in this scope
i2s.SERCTRL[index].bit.SERMODE = I2S_SERCTRL_SERMODE_TX_Val;
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:131:38: error: 'I2S_SERCTRL_SERMODE_TX_Val' was not declared in this scope
i2s.SERCTRL[index].bit.SERMODE = I2S_SERCTRL_SERMODE_TX_Val;
^~~~~~~~~~~~~~~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h: In member function 'void I2SDevice_SAMD21G18x::setRxMode(int)':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:135:5: error: 'i2s' was not declared in this scope
i2s.SERCTRL[index].bit.SERMODE = I2S_SERCTRL_SERMODE_RX_Val;
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:135:38: error: 'I2S_SERCTRL_SERMODE_RX_Val' was not declared in this scope
i2s.SERCTRL[index].bit.SERMODE = I2S_SERCTRL_SERMODE_RX_Val;
^~~~~~~~~~~~~~~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h: In member function 'void I2SDevice_SAMD21G18x::enableClockUnit(int)':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:140:13: error: 'i2s' was not declared in this scope
while(i2s.SYNCBUSY.bit.CKEN0);
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:141:7: error: 'i2s' was not declared in this scope
i2s.CTRLA.bit.CKEN0 = 1;
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:143:13: error: 'i2s' was not declared in this scope
while(i2s.SYNCBUSY.bit.CKEN1);
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:144:7: error: 'i2s' was not declared in this scope
i2s.CTRLA.bit.CKEN1 = 1;
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h: In member function 'void I2SDevice_SAMD21G18x::disableClockUnit(int)':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:150:13: error: 'i2s' was not declared in this scope
while(i2s.SYNCBUSY.bit.CKEN0);
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:151:7: error: 'i2s' was not declared in this scope
i2s.CTRLA.bit.CKEN0 = 0;
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:153:13: error: 'i2s' was not declared in this scope
while(i2s.SYNCBUSY.bit.CKEN1);
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:154:7: error: 'i2s' was not declared in this scope
i2s.CTRLA.bit.CKEN1 = 0;
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h: In member function 'void I2SDevice_SAMD21G18x::enableSerializer(int)':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:160:13: error: 'i2s' was not declared in this scope
while(i2s.SYNCBUSY.bit.SEREN0);
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:161:7: error: 'i2s' was not declared in this scope
i2s.CTRLA.bit.SEREN0 = 1;
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:163:13: error: 'i2s' was not declared in this scope
while(i2s.SYNCBUSY.bit.SEREN1);
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:164:7: error: 'i2s' was not declared in this scope
i2s.CTRLA.bit.SEREN1 = 1;
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h: In member function 'void I2SDevice_SAMD21G18x::disableSerializer(int)':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:170:13: error: 'i2s' was not declared in this scope
while(i2s.SYNCBUSY.bit.SEREN0);
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:171:7: error: 'i2s' was not declared in this scope
i2s.CTRLA.bit.SEREN0 = 0;
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:173:13: error: 'i2s' was not declared in this scope
while(i2s.SYNCBUSY.bit.SEREN1);
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:174:7: error: 'i2s' was not declared in this scope
i2s.CTRLA.bit.SEREN1 = 0;
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h: In member function 'int I2SDevice_SAMD21G18x::dmaTriggerSource(int)':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:179:9: error: 'i2s' was not declared in this scope
if (i2s.SERCTRL[index].bit.SERMODE == I2S_SERCTRL_SERMODE_TX_Val) {
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:179:43: error: 'I2S_SERCTRL_SERMODE_TX_Val' was not declared in this scope
if (i2s.SERCTRL[index].bit.SERMODE == I2S_SERCTRL_SERMODE_TX_Val) {
^~~~~~~~~~~~~~~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:180:29: error: 'I2S_DMAC_ID_TX_0' was not declared in this scope
return (index == 0) ? I2S_DMAC_ID_TX_0 : I2S_DMAC_ID_TX_1;
^~~~~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:180:48: error: 'I2S_DMAC_ID_TX_1' was not declared in this scope
return (index == 0) ? I2S_DMAC_ID_TX_0 : I2S_DMAC_ID_TX_1;
^~~~~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:182:29: error: 'I2S_DMAC_ID_RX_0' was not declared in this scope
return (index == 0) ? I2S_DMAC_ID_RX_0 : I2S_DMAC_ID_RX_1;
^~~~~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:182:48: error: 'I2S_DMAC_ID_RX_1' was not declared in this scope
return (index == 0) ? I2S_DMAC_ID_RX_0 : I2S_DMAC_ID_RX_1;
^~~~~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h: In member function 'int I2SDevice_SAMD21G18x::txReady(int)':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:187:27: error: 'i2s' was not declared in this scope
return (index == 0) ? i2s.INTFLAG.bit.TXRDY0 :i2s.INTFLAG.bit.TXRDY1;
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h: In member function 'void I2SDevice_SAMD21G18x::writeData(int, int32_t)':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:192:14: error: 'i2s' was not declared in this scope
while (i2s.SYNCBUSY.bit.DATA0);
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:194:14: error: 'i2s' was not declared in this scope
while (i2s.SYNCBUSY.bit.DATA1);
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:197:5: error: 'i2s' was not declared in this scope
i2s.DATA[index].bit.DATA = value;
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h: In member function 'void I2SDevice_SAMD21G18x::clearTxReady(int)':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:202:6: error: 'i2s' was not declared in this scope
i2s.INTFLAG.bit.TXRDY0 = 1;
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:204:6: error: 'i2s' was not declared in this scope
i2s.INTFLAG.bit.TXRDY1 = 1;
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h: In member function 'int I2SDevice_SAMD21G18x::rxReady(int)':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:209:27: error: 'i2s' was not declared in this scope
return (index == 0) ? i2s.INTFLAG.bit.RXRDY0 :i2s.INTFLAG.bit.RXRDY1;
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h: In member function 'int32_t I2SDevice_SAMD21G18x::readData(int)':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:214:14: error: 'i2s' was not declared in this scope
while (i2s.SYNCBUSY.bit.DATA0);
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:216:14: error: 'i2s' was not declared in this scope
while (i2s.SYNCBUSY.bit.DATA1);
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:219:12: error: 'i2s' was not declared in this scope
return i2s.DATA[index].bit.DATA;
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h: In member function 'void I2SDevice_SAMD21G18x::clearRxReady(int)':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:224:6: error: 'i2s' was not declared in this scope
i2s.INTFLAG.bit.RXRDY0 = 1;
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:226:6: error: 'i2s' was not declared in this scope
i2s.INTFLAG.bit.RXRDY1 = 1;
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h: In member function 'void* I2SDevice_SAMD21G18x::data(int)':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/SAMD21_I2SDevice.h:231:20: error: 'i2s' was not declared in this scope
return (void*)&i2s.DATA[index].reg;
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp: At global scope:
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp:25:35: error: 'I2S' was not declared in this scope
static I2SDevice_SAMD21G18x i2sd(*I2S);
^~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp: In member function 'int I2SClass::begin(int, long int, int, bool)':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp:101:5: error: 'PM' was not declared in this scope
PM->APBCMASK.reg |= PM_APBCMASK_I2S;
^~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp:101:5: note: suggested alternative: 'PI'
PM->APBCMASK.reg |= PM_APBCMASK_I2S;
^~
PI
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp:101:25: error: 'PM_APBCMASK_I2S' was not declared in this scope
PM->APBCMASK.reg |= PM_APBCMASK_I2S;
^~~~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp:133:26: error: 'PIO_COM' was not declared in this scope
pinPeripheral(_sckPin, PIO_COM);
^~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp:133:3: error: 'pinPeripheral' was not declared in this scope
pinPeripheral(_sckPin, PIO_COM);
^~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp: In member function 'void I2SClass::end()':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp:179:5: error: 'PM' was not declared in this scope
PM->APBCMASK.reg &= ~PM_APBCMASK_I2S;
^~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp:179:5: note: suggested alternative: 'PI'
PM->APBCMASK.reg &= ~PM_APBCMASK_I2S;
^~
PI
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp:179:26: error: 'PM_APBCMASK_I2S' was not declared in this scope
PM->APBCMASK.reg &= ~PM_APBCMASK_I2S;
^~~~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp: In member function 'virtual int I2SClass::available()':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp:189:32: error: '__get_PRIMASK' was not declared in this scope
uint8_t enableInterrupts = ((__get_PRIMASK() & 0x1) == 0);
^~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp:193:3: error: '__disable_irq' was not declared in this scope
__disable_irq();
^~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp:209:5: error: '__enable_irq' was not declared in this scope
__enable_irq();
^~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp: In member function 'virtual int I2SClass::peek()':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp:242:32: error: '__get_PRIMASK' was not declared in this scope
uint8_t enableInterrupts = ((__get_PRIMASK() & 0x1) == 0);
^~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp:248:3: error: '__disable_irq' was not declared in this scope
__disable_irq();
^~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp:254:5: error: '__enable_irq' was not declared in this scope
__enable_irq();
^~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp: In member function 'virtual int I2SClass::availableForWrite()':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp:289:32: error: '__get_PRIMASK' was not declared in this scope
uint8_t enableInterrupts = ((__get_PRIMASK() & 0x1) == 0);
^~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp:293:3: error: '__disable_irq' was not declared in this scope
__disable_irq();
^~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp:299:5: error: '__enable_irq' was not declared in this scope
__enable_irq();
^~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp: In member function 'int I2SClass::read(void*, size_t)':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp:311:32: error: '__get_PRIMASK' was not declared in this scope
uint8_t enableInterrupts = ((__get_PRIMASK() & 0x1) == 0);
^~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp:314:3: error: '__disable_irq' was not declared in this scope
__disable_irq();
^~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp:330:5: error: '__enable_irq' was not declared in this scope
__enable_irq();
^~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp: In member function 'size_t I2SClass::write(const void*, size_t)':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp:363:32: error: '__get_PRIMASK' was not declared in this scope
uint8_t enableInterrupts = ((__get_PRIMASK() & 0x1) == 0);
^~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp:367:3: error: '__disable_irq' was not declared in this scope
__disable_irq();
^~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp:383:5: error: '__enable_irq' was not declared in this scope
__enable_irq();
^~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp: In member function 'void I2SClass::enableClock(int)':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp:406:13: error: 'SystemCoreClock' was not declared in this scope
int div = SystemCoreClock / divider;
^~~~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp:407:13: error: 'GCLK_GENCTRL_SRC_DFLL48M_Val' was not declared in this scope
int src = GCLK_GENCTRL_SRC_DFLL48M_Val;
^~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp:412:11: error: 'GCLK_GENCTRL_SRC_OSC8M_Val' was not declared in this scope
src = GCLK_GENCTRL_SRC_OSC8M_Val;
^~~~~~~~~~~~~~~~~~~~~~~~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp:416:10: error: 'GCLK' was not declared in this scope
while (GCLK->STATUS.bit.SYNCBUSY);
^~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp:416:10: note: suggested alternative: 'SCL'
while (GCLK->STATUS.bit.SYNCBUSY);
^~~~
SCL
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp:417:3: error: 'GCLK' was not declared in this scope
GCLK->GENDIV.bit.ID = _clockGenerator;
^~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp:417:3: note: suggested alternative: 'SCL'
GCLK->GENDIV.bit.ID = _clockGenerator;
^~~~
SCL
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp: In member function 'void I2SClass::disableClock()':
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp:438:10: error: 'GCLK' was not declared in this scope
while (GCLK->STATUS.bit.SYNCBUSY);
^~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp:438:10: note: suggested alternative: 'SCL'
while (GCLK->STATUS.bit.SYNCBUSY);
^~~~
SCL
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp:439:3: error: 'GCLK' was not declared in this scope
GCLK->GENCTRL.bit.ID = _clockGenerator;
^~~~
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp:439:3: note: suggested alternative: 'SCL'
GCLK->GENCTRL.bit.ID = _clockGenerator;
^~~~
SCL
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\I2S.cpp:440:27: error: 'GCLK_GENCTRL_SRC_DFLL48M_Val' was not declared in this scope
GCLK->GENCTRL.bit.SRC = GCLK_GENCTRL_SRC_DFLL48M_Val;
^~~~~~~~~~~~~~~~~~~~~~~~~~~~
exit status 1
Error compiling for board Arduino Uno.
This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.
- Mor0051
- Posts: 4
- Joined: Wed Mar 02, 2022 3:18 am
Re: I2S Stereo Decoder with Metro express
I found all the libraries that are missing,
got this error:
got this error:
Code: Select all
Arduino: 1.8.19 (Windows Store 1.8.57.0) (Windows 10), Board: "Adafruit Metro M0 Express (SAMD21), Small (-Os) (standard), Arduino, Off"
In file included from C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src/ArduinoSound.h:28,
from C:\Users\MORDEC~1.UKS\AppData\Local\Temp\arduino_modified_sketch_681018\ClapDetector.ino:19:
C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src/AmplitudeAnalyzer.h:24: warning: "ARM_MATH_CM0PLUS" redefined
24 | #define ARM_MATH_CM0PLUS
|
<command-line>: note: this is the location of the previous definition
c:/users/mordechai.uksusman/documents/arduinodata/packages/adafruit/tools/arm-none-eabi-gcc/9-2019q4/bin/../lib/gcc/arm-none-eabi/9.2.1/../../../../arm-none-eabi/bin/ld.exe: libraries\Adafruit_ZeroDMA\Adafruit_ZeroDMA.cpp.o: in function `DMAC_Handler':
C:\Users\mordechai.uksusman\Documents\ArduinoData\packages\adafruit\hardware\samd\1.7.10\libraries\Adafruit_ZeroDMA/Adafruit_ZeroDMA.cpp:124: multiple definition of `DMAC_Handler'; libraries\ArduinoSound\utility\DMA.cpp.o:C:\Users\mordechai.uksusman\Documents\Arduino\libraries\ArduinoSound\src\utility/DMA.cpp:279: first defined here
collect2.exe: error: ld returned 1 exit status
exit status 1
Error compiling for board Adafruit Metro M0 Express (SAMD21).
This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.
- mikeysklar
- Posts: 13936
- Joined: Mon Aug 01, 2016 8:10 pm
Re: I2S Stereo Decoder with Metro express
You should enable verbose mode under File --> Preferences as the log warning suggests so we can see the full compilation issue.
Can you start with one of our examples to get going.
https://learn.adafruit.com/adafruit-i2s ... -2976018-4
Can you start with one of our examples to get going.
Code: Select all
#include <Arduino.h>
#include <Adafruit_ZeroI2S.h>
#include <math.h>
/* max volume for 32 bit data */
#define VOLUME ( (1UL << 31) - 1)
/* create a buffer for both the left and right channel data */
#define BUFSIZE 128
int left[BUFSIZE];
int right[BUFSIZE];
// Use default pins in board variant
Adafruit_ZeroI2S i2s = Adafruit_ZeroI2S();
void setup()
{
while (!Serial) delay(10);
Serial.println("I2S demo");
for(int i=0; i<BUFSIZE; i++){
/* create a sine wave on the left channel */
left[i] = sin( (2*PI / (BUFSIZE) ) * i) * VOLUME;
/* create a cosine wave on the right channel */
right[i] = cos( (2*PI / (BUFSIZE) ) * i) * VOLUME;
}
/* begin I2S on the default pins. 24 bit depth at
* 44100 samples per second
*/
i2s.begin(I2S_32_BIT, 44100);
i2s.enableTx();
}
void loop()
{
/* write the output buffers
* note that i2s.write() will block until both channels are written.
*/
for(int i=0; i<BUFSIZE; i++){
i2s.write(left[i], right[i]);
}
}
- mikeysklar
- Posts: 13936
- Joined: Mon Aug 01, 2016 8:10 pm
Re: I2S Stereo Decoder with Metro express
You should enable verbose mode under File --> Preferences as the log warning suggests so we can see the full compilation issue.
Can you start with one of our examples to get going.
https://learn.adafruit.com/adafruit-i2s ... -2976018-4
Can you start with one of our examples to get going.
Code: Select all
#include <Arduino.h>
#include <Adafruit_ZeroI2S.h>
#include <math.h>
/* max volume for 32 bit data */
#define VOLUME ( (1UL << 31) - 1)
/* create a buffer for both the left and right channel data */
#define BUFSIZE 128
int left[BUFSIZE];
int right[BUFSIZE];
// Use default pins in board variant
Adafruit_ZeroI2S i2s = Adafruit_ZeroI2S();
void setup()
{
while (!Serial) delay(10);
Serial.println("I2S demo");
for(int i=0; i<BUFSIZE; i++){
/* create a sine wave on the left channel */
left[i] = sin( (2*PI / (BUFSIZE) ) * i) * VOLUME;
/* create a cosine wave on the right channel */
right[i] = cos( (2*PI / (BUFSIZE) ) * i) * VOLUME;
}
/* begin I2S on the default pins. 24 bit depth at
* 44100 samples per second
*/
i2s.begin(I2S_32_BIT, 44100);
i2s.enableTx();
}
void loop()
{
/* write the output buffers
* note that i2s.write() will block until both channels are written.
*/
for(int i=0; i<BUFSIZE; i++){
i2s.write(left[i], right[i]);
}
}
Please be positive and constructive with your questions and comments.