If you look at the Edison Module Hardware Guide, in page 25, you'll find that the I2S interface is available on the pins 50, 52, 54 and 56.
Pin Signal Name Alternate Function Description 50 GP42 I2S_2_RXD GPIO, I2S2 receive data (input) 52 GP40 I2S_2_CLK GPIO, I2S2 clock (output) 54 GP41 I2S_2_FS GPIO, I2S2 frame sync (output) 56 GP43 I2S_2_TXD GPIO, I2S2 transmit data (output)
If you are using the Arduino Expansion Board, the Intel® Edison Boards and Compute Modules — Intel® Edison Kit for Arduino* Hardware Guide on page 10 says that the I2S_2_CLK in available on pin 13. On the same table you'll find the configuration needed to enable I2S on the Arduio Expansion Board.
Please do note that the Edison Module Hardware Guide specifies on page 25 that all of the I2S modes have not been verified and are subject to change.
Thank you very much for your answer.
I found Edison Module Hardware Guide and Edison Kit for Arduino* Hardware Guide.
So can I question additionally?
I was thinking,
UDA1380's BCKI to Edison's I2S_2_CLK,
UDA1380's WSI to Edison's I2S_2_FS,
UDA1380's DATAI to Edison's I2S_2_TXD,
and I didn't know where to connect UDA1380's SYSCLK.
If UDA1380's SYSCLK connect to I2S_2_CLK,
Where should UDA1380's BCKI be connected?
I took a quick look at the datasheet of the UDA1380, I'm not a 100% sure but I believe those three pins are the ones you should connect, I believe SYSCLK is an input to syncronize the chip with your system, I believe the UDA1380 has an internal clock if SYSCLK is not connected, but as I mentioned I'm not certain, i suggest you to take a close look at the UDA1380 datasheet.
The Edison's I2S interface is not yet supported by the Linux kernel and ALSA. You should have a look at the other threads on the subject before investing too much time in this.
Future support is planned though. I am personally waiting for more answer on this subject from Intel since last November.
Is there basic Edison support for I2S IO to alsa in the standard edison Yocto linux kernel / image yet ?
Its July 2016 and the edison has been out for a while !
If the SOC has I2S IO then it should be supported by now? If not, no problem , i will move on !
I would like to give edison one more go in my project rather than use ARM M4 or M7 cortex since I think
I would benifit from using x86 architecture in the audio processing.
I wuld like to stream multichannel I2S in and out of linux to record and play back multichannel audio in 24bit up to 196khz with ARECORD APLAY to I2S hardware.
I would like to have 4 , 2 channel I2S channels or possibly use TDM or DSP 8 channel if its possible to stream from and to the DSP ic in my project.
I also need to use I2C and SPI bus at the same time. I have the arduino breakout board and would like to have 3.3v IO logic I2S for testing. If not is on the arduino breakout on the mini breakout
and I can add some logic level translators to 1.8v but would rather not just for testing.
So far i've hit a brick wall with everything edison from simple PWM motor control , Arduino library compatabilty & attempting to build a simple working bluetooth control example in the IOT IDE examples.
I think is my last try at using the board before it hits ebay
anyone out there have any luck using I2S and edison or is it all smoke and mirrors ?
A while back an update that added support for I2S on Edison was made public. There's an official Audio Setup Guide for Edison where you can see all of Edison's I2S capabilities. You can find that document in Audio Setup Guide for the Intel® Edison Platform . I suggest you to check it out.
Hi, thanks for both posts , Audio Setup Guide for the Intel® Edison Platform is what I was looking for
, I had no idea you had to,export GPIO's for I2S and I2C !! Thanks Farit
# Export GPIOs that control I2S signals
echo 263 > /sys/class/gpio/export
echo 240 > /sys/class/gpio/export
echo 262 > /sys/class/gpio/export
echo 241 > /sys/class/gpio/export
echo 242 > /sys/class/gpio/export
echo 243 > /sys/class/gpio/export
echo 258 > /sys/class/gpio/export
echo 259 > /sys/class/gpio/export
echo 260 > /sys/class/gpio/export
echo 261 > /sys/class/gpio/export
echo 226 > /sys/class/gpio/export
echo 227 > /sys/class/gpio/export
echo 228 > /sys/class/gpio/export
echo 229 > /sys/class/gpio/export
# Export GPIOs that control I2C signals
echo 28 > /sys/class/gpio/export
echo 27 > /sys/class/gpio/export
echo 204 > /sys/class/gpio/export
echo 205 > /sys/class/gpio/export
echo 236 > /sys/class/gpio/export
echo 237 > /sys/class/gpio/export
echo 14 > /sys/class/gpio/export
echo 165 > /sys/class/gpio/export
echo 212 > /sys/class/gpio/export
echo 213 > /sys/class/gpio/export