element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet & Tria Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • About Us
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      • Japan
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Vietnam
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Raspberry Pi
  • Products
  • More
Raspberry Pi
Raspberry Pi Forum Noise from DMICs on Wolfson Sound Card
  • Blog
  • Forum
  • Documents
  • Quiz
  • Events
  • Polls
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Raspberry Pi to participate - click to join for free!
Featured Articles
Announcing Pi
Technical Specifications
Raspberry Pi FAQs
Win a Pi
Raspberry Pi Wishlist
Actions
  • Share
  • More
  • Cancel
Forum Thread Details
  • State Not Answered
  • Replies 6 replies
  • Subscribers 675 subscribers
  • Views 659 views
  • Users 0 members are here
  • dmic
  • raspberry_pi
  • raspberry-pi
  • noise
Related

Noise from DMICs on Wolfson Sound Card

Former Member
Former Member over 10 years ago

Hi. I have been working on the audio recording on Raspberry Pi with Wolfson Sound Card. The problem is that I get high noise from DMIC such that sox cannot do silence trimming. I tried both low high-pass filters but no use. I am wondering if there is a way to resolve that.

 

Thanks!

  • Sign in to reply
  • Cancel
Parents
  • royleith
    0 royleith over 10 years ago

    The only problem I have had is the DC component that gets recorded. That can be stripped out in Audacity (Normalise) or by introducing an High-Pass-Filter in the mixer.

     

    The problem may be that there are several volume controls involved. I am on my Pi2 ATM and am going by memory (not a good thing, in my case!). There is a 'Recording' AIF1TX Input Volume of 0-48 (set it to 32, which is 0dB), but there are two DMIC volume Controls, as well. There is an IN2 Digital Volume control of 0-191 (try 116) and another which I think is in the analog domain of 0-48 (try 32).

     

    If the two IN2 levels are set too low and the deficit made up on AIF1TX Digital, then noise will be increased.

     

    I find that not using an HPF (patching in an LHPF and setting it to high pass) means that the level measured in Audacity includes a substantial DC component. This conceals the true record level.

     

    There are two different versions of the amixer driver (Wolfson and Cirrus) and the commands for each are different. I have written a mixer for both, but I can't think of a way of sharing them. However, typing alsamixer into terminal will provide the appropriate  character based interface for volume controls, patches and switches. They can be changed using the keyboard. All the volume controls are given the range 0-100 so you will have to experiment.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • Former Member
    0 Former Member over 10 years ago in reply to royleith

    Hi Roy. Thanks for your reply!

     

    So I followed your suggestion and set the volumes to the recommended values. But still, I got high white noise such that rec with sox cannot stop by detecting silence at the end. I tried to configure the parameters with alsamixer. But none of them seem to work, including noise gate threshold, noise generator, noise in.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • royleith
    0 royleith over 10 years ago in reply to Former Member

    If you set noise volume ('Noise Generator Volume') to zero it should cut it out completely. However you might also want to set 'Noise Input 1 [-4] Volume' to zero, as well. I think these inputs inject a comfort noise signal when the microphone is muted. In addition, check all the inputs to all the channels and filters you are using and make sure all inputs you are not using are set to 'None'. Steer clear of the dynamic range control (DRC) as it may boost the noise during quiet periods.

     

    I have got good results with the Noise Gate set to the following defaults;

    'Noise Gate Switch' : on

    'Noise Gate Threshold Volume' : 7

    'Noise Gate Hold' : 120ms

     

    Try recording with the HPF in circuit using Audacity. If you get low noise results, it points to a configuration or a levels problem with sox. With Audacity in 'Record' and 'Pause' you can monitor the input level to ensure that you are using reasonable record levels.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • royleith
    0 royleith over 10 years ago in reply to Former Member

    Shinda,

     

    I've just got back to the Raspi B/Wolfson  and tried out some test with a headset mic, the DMICs and a stereo mic via Line In.

     

    The DMIC, headset mic and Line In each have a volume control with a range of 0-31. These are IN1L&R, IN2L&R and IN3L&R. Although reasonable results can be obtained with lower settings, the best results are obtained with all three volumes set at the full value of 31, with the amixer command, or 100 with alsamixer. The Digital volume should be set as low as possible whilst still getting -5 to -10 dB recording level (i,e, almost topping out the meters). Reasonable results are possible at 116 (the maximum possible is 191), but dropping it to 100 with the AIF1TX level set at 32 gives a lower noise floor still  if your microphone is sensitive enough.

     

    Whichever of the three inputs you are using, try at a 'Digital' level of around 100 and only push it up if you cannot get adequate recording levels.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • Former Member
    0 Former Member over 10 years ago in reply to royleith

    Hi Roy,

     

    Thanks so much for the very detailed solution! So I tried all of the steps you suggested, but unfortunately, none of them works. I think it might be time for me to move onto Line In mics. Do you have any suggestions for a stereo mic via Line In that works decently with Pi? Preferably something that doesn't cost too much.

     

    Thanks!

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • royleith
    0 royleith over 10 years ago in reply to Former Member

    Hi Shinda,

     

    My stereo mic has a built-in, battery-powered preamp that brings it up to line level. It is a cheap and cheerful device I bought many years ago for experimenting with computer sound. I haven't seen anything like it for years.

     

    A pair of cheap dynamic  mics would be best, but you would need to use a microphone preamp. Mics don't produce enough level on their own. However, if you cannot get a low noise floor with DMIC and the headset mic then you won't do any better with Line In.

     

    Try recording with AIF1 set to 'None' and zero volume. If you get noise then there is some other problem going on. If you get silence, patch it to DMIC and turn AIF1TX1 & 2 to 32 and the IN2L & R digital volume down from 116 to 0. If you don't get silence then there is  something else patched to AIF1TX1 & 2, input 2, 3 or 4.

     

    Have you used Audacity with its level meters for recording, yet? It would be best to try that first to make sure your recording process is working before using anything else with automated settings.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
Reply
  • royleith
    0 royleith over 10 years ago in reply to Former Member

    Hi Shinda,

     

    My stereo mic has a built-in, battery-powered preamp that brings it up to line level. It is a cheap and cheerful device I bought many years ago for experimenting with computer sound. I haven't seen anything like it for years.

     

    A pair of cheap dynamic  mics would be best, but you would need to use a microphone preamp. Mics don't produce enough level on their own. However, if you cannot get a low noise floor with DMIC and the headset mic then you won't do any better with Line In.

     

    Try recording with AIF1 set to 'None' and zero volume. If you get noise then there is some other problem going on. If you get silence, patch it to DMIC and turn AIF1TX1 & 2 to 32 and the IN2L & R digital volume down from 116 to 0. If you don't get silence then there is  something else patched to AIF1TX1 & 2, input 2, 3 or 4.

     

    Have you used Audacity with its level meters for recording, yet? It would be best to try that first to make sure your recording process is working before using anything else with automated settings.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
Children
No Data
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2026 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube