Hello, I want to interface an audio codec with I2C and I2S protocol. I haven´t found info about I2S implementation on this board, is it possible to use this protocol?
Well, there is this:
Arduino I2S
Someone else will have to opine on the features of the Nano 33 BLE (nRF52840) vs the SAMD21. A superficial browse leads me to believe the feature sets aren't similar enough, but I'm no pro at those processor sets.
Ok, I ran into the same "Problem" and couldn't find anything on google besides a lot of red herrings. This is the first hit on google, so let me post my findings here.
First, the Arduino I2S Library works by setting registers, so not really much to copy there for a different chipset.
Second attempt, the Nano BLE 33 Sense has a microphone (the solder pads for it seem to be available on the board), so the example should work, no?
Saddly, while one can adapt the PDM example code to new pins, this will not work. The microphone in the Sense is (as the name suggests) connected via Pulse width encoded signal and uses 2 wires instead of the required 3 wires of the I2S interface. Through it will spit out random values without complaining, possible confusing new users.
The Datasheet for the 33 BLE (https://docs.arduino.cc/resources/datasheets/ABX00030-datasheet.pdf) do mention I2S as an available interface. After some digging, I found a comprehensive documentation for the nRF52840s I2S interface, usefull as a starting place for other people:
Nordic Semiconductor Infocenter (This also shows example code further down under "Module operation", also a good starting point)
So, there is an official sdk from nordic with an I2S driver. We can use that:
documentation:
https://developer.nordicsemi.com/nRF_Connect_SDK/doc/2.2.0/nrfx/drivers/i2s/driver.html
Haven't implemented it yet, so could still be wrong.
The datasheet suggests that the entire, functional microphone assembly (MP34DT05) should be present on board.
The Nano BLE 33 Sense has a microphone, yes, through the question is for the Nano BLE 33 (via connecting an external I2S microphone/device). Where in that datasheet forr the Nano BLE 33 do you find that information?
This sentence is confusing, and seems to imply that the microphone is not actually present in the Sense. I don't have one to check and merely pointed out that the data sheet for the Sense claims that the microphone IS present.
the Nano BLE 33 Sense has a microphone (the solder pads for it seem to be available on the board)
It is not clear what board the OP has.
shrug the Sense microphone isn't I2S, so the question about the board is moot anyway. I was assuming that there is a Nano 33 BLE Sense tag, the OPs question is tagged Nano 33 BLE, so that is my reasonable assumption.
My usecase is using I2S to connect a microphone, the quoted sentence was about naively trying the Senses microphone example on a non-Sense to see if it works, a reasonable experiment due to the high obfuscation of the underlying tech in the arduino Eco system. I then explain why it didn't work and point to I2S examples for the Nordic Chip used in the 33 BLE.
Yes. So far this means the I2S in nRF52840 is not available on the Nano 33 BLE pins. Hope it can be made available of course, but haven't found anything about this yet.
The onboard PDM interface microphone is irrelevant to the raised topic.