4

I'm trying to design an ultra low power audio recorder, in order to monitor ground noise in rural areas. The circuit I'm working on is based on a microcontroller (STM32L100RC) and an audio codec (VS1053) plus a bunch of additional components.

At this point, my circuit estimated current draw is around 300 mA (average, without considering burst due to audio processing and memory card writing).

As I would like to run my setup for about 2 months (around 60 days) to make relevant measurements, at this rate I would need an "immense" battery pack.

I would like to ask if there is something that enables recording 2/4 channels to an SD card in a more energy friendly package (maybe 1/10 of actual 300 mA), where an 80Ah LiPo battery pack would be able running easily for the time span, and enough spare capacity for eventual other sensor samplings.

Thanks in advance.

Edit

Thanks for all your comments. I decided to edit the question to add more details, instead of answering singularly. The actual circuit voltage is 5V, audio cannot be processed onboard and I need only a large audio file (or a lot of smaller ones) for the entire sampling period.

VS1053 audio encoder supports OGG encoding and, considering microphone bandwidth (around 10kHz), I would like to record at 44.1kHz Mono.

My problem is mainly due to expected very high MCU + ENCODER current draw. I can consider a good result something around 4 mA during recording but now I'm out by around two orders of magnitude.

PeppeA82
  • 43
  • 1
  • 4
  • Are you measuring continuously or sampling every few minutes? – Trevor_G Oct 18 '17 at 16:50
  • 3
    First you need to define the sampling rate etc. How much data are you expecting total. 300mA sounds more than I would expect - you could record stereo audio for a lot less than that. What voltage are you referring to? Is that 300mA at 3.3v? ie ~1W? – Kevin White Oct 18 '17 at 16:57
  • 2
    Perhaps too broad a question to answer, but you need to idle the cpu core on the STM32 when your not using it. You should have no trouble getting to 10's of mA if not single mA – sstobbe Oct 18 '17 at 17:21
  • 2
    Failing all else... consider adding a solar panel. – Trevor_G Oct 18 '17 at 17:55
  • 1
    You need to start by figuring out what sort of noise you expect, and then figure out how you can efficiently capture that. You probably don't want an SD card, but rather an SPI flash, and you probably don't want to record linear audio continuously. Of course, event-driven recording may yield different battery life in different areas. – Chris Stratton Oct 18 '17 at 18:25
  • You should be able to do a lot better than that in terms of power consumption. I just want to point out that CD-quality stereo audio requires about 10MB per minute to record, which means that 60 days represents nearly a terabyte of data. Unless you compress the audio or do some other form of data reduction, you're going to need something much larger than an SD card. – Dave Tweed Oct 18 '17 at 18:35
  • Thanks for all your support. I've added some clarifications about, based on your answers. – PeppeA82 Oct 19 '17 at 10:05
  • Given the bandwidth of the microphone, your sampling rate could be lower. 44kHz is going to produce a lot of data – JRE Oct 19 '17 at 10:20
  • You can add a solar cell. Anyway, your 300mA looks excessive, please say how you calculated or measured it. The encoder's datasheet mentions much lower power consumption than this, and the STM32 shouldn't draw that much either. Something sounds weird here. – bobflux Oct 19 '17 at 12:12
  • Also I checked for software encoders, you'd need about 60MHz of Cortex-M4 to encode stereo vorbis (without NEON instructions) which translates to 30-40mA... so I would even question the need for a hardware encoder. Yours has a powerful headphone amplifier inside, make sure it's disabled, its output isn't shorted, etc... – bobflux Oct 19 '17 at 12:13
  • http://www.tascam.eu/en/dr-05.html This portable recorder does CD-quality and has 17 hours battery life on 2 AAs. Counting 2500mAh this means 147mA. That's a data point... but it is high quality recording, so it is likely to use more processing than your smaller bandwidth requires. Will you be using sound-triggered recording? (ie don't record silence)? – bobflux Oct 19 '17 at 12:41
  • I would think that if you are going to do any kind of processing of the recordings that you would want to use a lossless format. Compression loses bits of resolution, but it also changes the phases of the signals and does other nasty things to your signals. If you don't think so, send a fax signal through compression and back and see how far you get decoding it afterwards. – JRE Oct 20 '17 at 20:56
  • you also might look at how much audio you actually need to record. The codec might be costing you more in current than it buys you in cutting storage space. – danmcb Oct 01 '19 at 08:05
  • also if you are just doing noice monitoring you absolutely don't need 44.1kHz. Almost all of your noise energy is below about 5kHz, so you could sample at less than 10kHz. Unless you expect some very noisy bats ... – danmcb Oct 01 '19 at 08:07
  • 1
    and lastly you might consider whether you need to record audio *at all*. Are you really interested in 60 days of passing cars and crickets chirping? (Who is going to listen to it?) Possibly what you want to do is just record certain noise *events* (i.e. when level is over some threshold), perhaps with audio recording of them? – danmcb Oct 01 '19 at 08:09

1 Answers1

1

You should consider ultra low power MCUs and audio codecs. 300mA is definitely way too much at 5V. Also if you can, and most of the MCUs and codecs can these days, reduce the system power supply voltage to 3.3V or less, say 2.7V or even 1.8V, unless you have a reason not to. Why 5V ? Generally lower power MCUs are considered to be the MSP430s from Ti, and the AIC3204, again from Ti. You should be able to reduce from 300mA to less than 100mA if not more. Good luck.

citizen
  • 2,241
  • 7
  • 16