PDM MEMS mic & USB audio using the CY8C5666...

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
lock attach
Attachments are accessible only for community members.
Anonymous
Not applicable

Hi there,

   

Im looking to develop a low noise MEMS mic based USB audio input device for an urban noise sensing project in NYC and have started with the excellent code example provided at "USB audio using the PSoC 5LP"

   

However, Im looking to use the CY8C5666LTI-LP005, as the CY8C5868LTI-LP039 used in the example puts us over budget for our bulk build stage.

   

So far it seems that the cheaper MCU is only packing 20 Programmable Universal Digital Blocks, whereas the code example as it is requires 24, which the more expensive MCU can provide.

   

Build error: 

   
    

Resource limit: Maximum number of UDB Datapath Cells exceeded (max=20, needed=24). (App=cydsfit)

   
   

The example code provides functionality for audio input and output, but seeing as I only require audio input, Im wondering if I can reclaim some of those UDB datapath cells and successfully build and deploy the code. Im not sure if the audio output stages even use the UDB, but Im hoping someone out there does!

   

Ive also attached the code (setup with the cheaper MCU as the target device) if someone out there is familiar with it and could shed some light on the matter Id be extremely grateful.

   

Charlie

0 Likes
7 Replies
ETRO_SSN583
Level 9
Level 9
250 likes received 100 sign-ins 5 likes given

In each component datasheet is a Resources used section that tells you what

   

the component will use, so you can browse your project and get an idea of where

   

and what possibilities can be achieved by dropping component or modifying its

   

configuration.

   

 

   

Regards, Dana.

0 Likes
Bob_Marlowe
Level 10
Level 10
First like given 50 questions asked 10 questions asked

Byte swapping could be handled by the DMA already, look in datasheet for "Endianess". Could save you your ByteSwap_Tx component and the TX_Sync component. For your self-made UDB-components you should calculate how many UDBs each should use and check how many they actually consume.

   

Another idea:

   

Use a CY8CKIT-059 Prototyping Kit and use creator 3.2 SP1, it is cheaper than the pioneer kit, you get debug capabilities and last, you get a CY8C5888LTI-chip!

   

 

   

Bob

0 Likes
Anonymous
Not applicable

Thanks Bob, Ill have a root around and see what can be spared.

   

That prototyping kit is a bargain! The PSoC on it is over budget for our bulk build but great for experimentation.

   

Cheers,

   

Charlie

0 Likes
ETRO_SSN583
Level 9
Level 9
250 likes received 100 sign-ins 5 likes given

Some DMA ref material -

   

 

   

http://www.cypress.com/documentation/application-notes/an52705-psoc-3-and-psoc-5lp-getting-started-d...                                             AN52705     Getting Started with DMA

   

http://www.cypress.com/documentation/application-notes/an84810-psoc-3-and-psoc-5lp-advanced-dma-topi...                          AN84810     PSoC® 3 and PSoC 5LP Advanced DMA Topics

   

http://www.cypress.com/documentation/application-notes/an61102-psoc-3-and-psoc-5lp-adc-data-bufferin...                AN61102 PSoC® 3 and PSoC 5LP - ADC Data Buffering Using DMA

   

http://video.cypress.com/video-library/search/dma/     Videos on DMA

   

https://www.youtube.com/results?search_query=dma+psoc Videos on DMA (some overlap)

   

 

   

Regards, Dana.

0 Likes
Anonymous
Not applicable

Appreciate it Dana! This could all be solved by throwing money at the problem and going for the high end PSoC, but a university research budget is pretty tight so another solution needs to be found.

   

Cheers,

   

Charlie

0 Likes
odissey1
Level 9
Level 9
First comment on KBA 1000 replies posted 750 replies posted

cmydlarz,

   

I have simpler proposition: (i) use analog microphone ($1), (ii) use analog section (OPAMP, sample-hold, comparator, ADC)  to extract peak amplitude, (iii) process and accumulate data in PSoC and UART it to network by WiFi dongle. Such project should fit PSoC4 ($1).

   

odissey1 

0 Likes
Anonymous
Not applicable

Cheers for the input Odissey1 but the solution needs to handle the raw audio at high quality as we transmit audio to our servers from each node. The MCU/mic is also powered by the USB VCC so a higher level of noise rejection is needed, which the digi MEMS mics excel at.

   

The PSoC4 may be able to handle the audio, but the noise rejection circuitry would inflate the cost and number of parts if we moved to an analog solution.

   

Charlie

0 Likes