I am attempting to build an audio application using the I2S bus on the FRDM-KL27Z board. The KSDK v2.0 doesn't have a driver for the SAI/I2S bus other that the flexIO. Is one planned? Or is it not supported?
Thanks.
Solved! Go to Solution.
Hi Xiangjun,
I got this table from the rep. It explains the differences. I have started the process of porting the sai drivers to the KLK27Z.
The KL27Z devices in red below with 128K or 256K of Flash include one I2S port. The 32K/64K Flash devices do not.
MK Part Number | Total Flash Memory (KB) | SRAM (KB) | Pin Count | Package | I2S |
MKL27Z32VDA4 | 32 | 8 | 36 | XFBGA | - |
MKL27Z32VFM4 | 32 | 8 | 32 | QFN | - |
MKL27Z32VFT4 | 32 | 8 | 48 | QFN | - |
MKL27Z32VLH4 | 32 | 8 | 64 | LQFP | - |
MKL27Z32VMP4 | 32 | 8 | 64 | MAPBGA | - |
MKL27Z64VDA4 | 64 | 16 | 36 | XFBGA | - |
MKL27Z64VFM4 | 64 | 16 | 32 | QFN | - |
MKL27Z64VFT4 | 64 | 16 | 48 | QFN | - |
MKL27Z64VLH4 | 64 | 16 | 64 | LQFP | - |
MKL27Z64VMP4 | 64 | 16 | 64 | MAPBGA | - |
MKL27Z128VFM4 | 128 | 32 | 32 | QFN | 1 |
MKL27Z128VFT4 | 128 | 32 | 48 | QFN | 1 |
MKL27Z128VLH4 | 128 | 32 | 64 | LQFP | 1 |
MKL27Z128VMP4 | 128 | 32 | 64 | MAPBGA | 1 |
MKL27Z256VFM4 | 256 | 32 | 32 | QFN | 1 |
MKL27Z256VFT4 | 256 | 32 | 48 | QFN | 1 |
MKL27Z256VLH4 | 256 | 32 | 64 | LQFP | 1 |
MKL27Z256VMP4 | 256 | 32 | 64 | MAPBGA | 1 |
If its not there, why do the data sheets and reference manual have that component? I am already into prototype run of boards so changing parts is not an option.
Hi, Andrew,
I have downloaded the reference Manual, I read the RM carefully, but I do not see there is I2S or SAI module, I do not see the pin assignment for the I2S module in the Chapter 10 Pinouts and Packaging in the KL27P64M48SF2RM.pdf file. But the diagram of KL27Z on the website does show that there is I2S module, I am also confused.
can you tell me the Reference manual you referred to? which pins are I2S pins for example bit clock/frame clock/data pins for both receiver and transmitter in your RM?
The Kl27 do have FlexIO which can simulate the I2S timing, but we do not discuss the case.
I am sorry if I am wrong.
BR
Xiangjun Rong
Hi Xiangjun Rong,
On Rev. 5 of the datasheet:
And in 01/2016 version of the reference manual:
Hi, Andrew,
I apologize for the wrong information, the Kl27Z does have SAI module. I have downloaded the latest revision 5 of Reference manual of KL27, it says that Kl27 has SAI module exactly. But the revision 3 of reference manual of Kl27 I had does not mention any SAI module. I suspect that is why the software team does not develop code for the SAI module.
Regarding the driver of SAI, I think you can download the SAI driver from the other chip for example Kl33/kl36, and copy the fsl_sai.c and fsl_sai.h code to the C:\Freescale\KSDK2.0_KL27\devices\MKL27Z644\drivers, it is okay.
Hope it can help you.
BR
Xiangjun Rong
Hi Xiangjun,
I got this table from the rep. It explains the differences. I have started the process of porting the sai drivers to the KLK27Z.
The KL27Z devices in red below with 128K or 256K of Flash include one I2S port. The 32K/64K Flash devices do not.
MK Part Number | Total Flash Memory (KB) | SRAM (KB) | Pin Count | Package | I2S |
MKL27Z32VDA4 | 32 | 8 | 36 | XFBGA | - |
MKL27Z32VFM4 | 32 | 8 | 32 | QFN | - |
MKL27Z32VFT4 | 32 | 8 | 48 | QFN | - |
MKL27Z32VLH4 | 32 | 8 | 64 | LQFP | - |
MKL27Z32VMP4 | 32 | 8 | 64 | MAPBGA | - |
MKL27Z64VDA4 | 64 | 16 | 36 | XFBGA | - |
MKL27Z64VFM4 | 64 | 16 | 32 | QFN | - |
MKL27Z64VFT4 | 64 | 16 | 48 | QFN | - |
MKL27Z64VLH4 | 64 | 16 | 64 | LQFP | - |
MKL27Z64VMP4 | 64 | 16 | 64 | MAPBGA | - |
MKL27Z128VFM4 | 128 | 32 | 32 | QFN | 1 |
MKL27Z128VFT4 | 128 | 32 | 48 | QFN | 1 |
MKL27Z128VLH4 | 128 | 32 | 64 | LQFP | 1 |
MKL27Z128VMP4 | 128 | 32 | 64 | MAPBGA | 1 |
MKL27Z256VFM4 | 256 | 32 | 32 | QFN | 1 |
MKL27Z256VFT4 | 256 | 32 | 48 | QFN | 1 |
MKL27Z256VLH4 | 256 | 32 | 64 | LQFP | 1 |
MKL27Z256VMP4 | 256 | 32 | 64 | MAPBGA | 1 |
Hi, Andrew,
Thank you for providing the table and tell me the information that only Kl27Z with 128/256K flash has I2S interface.
BR
Xiangjun Rong
Hello Andrew,
If the ksdk2.0 have not the SAI driver, you can use the KSDK1.3,
it have "fsl_sai"
f
Hope it helps
Have a great day,
Alice
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Hi Alice,
I looked at the v1.3 SDK. Is there a plan to port this driver to 2.0? Also the 1.3 SDK has a feature count of 0, has this driver been tested on this platform?
./platform/devices/MKL27Z644/include/MKL27Z644_features.h:224:#define FSL_FEATURE_SOC_I2S_COUNT (0)
Hi, Andrew,
It seems that the KL27 does not have SAI peripheral, that is why that the SDK2.0 of KL27 does not include the SAI driver. But the Kl27 has flexIO, it is said that it can simulate the SAI timing, but I do not know the performance.
can you select the other Kinetis processor which has SAI module for example Kinetis K family?
Hope it can help you.
BR
Xiangjun Rong