Need advice on what Arduino to use for an oceanographic buoy

I work at the Scripps Institution of Oceanography. Our group builds small (basketball size) drifting wavebuoys. We currently use a custom ARM processor board with 4 UARTS, 2 ADCs, 2 GPIO lines, MicroSD card. This board interfaces through the UARTs to another custom board that has a GPS receiver and Iridium satellite modem. Its main application is collecting GPS velocity samples, and producing power/directional spectra using FFT code written in C. The board has an external real time clock, so we can put the ARM to sleep for an hour (say) and have the RTC generate an interrupt to wake the ARM back up. This saves battery life.

I'm looking to replace the ARM board because 1) it's expensive, and 2) it's a power hog.

SO I'm wondering if there is a good Arduino alternative. Which hardware would you suggest given my requirements above? I know that's a loaded question, but I'd appreciate any advice you can provide.

If you need the four hardware USARTs, then a MEGA is going to be needed. Arduino is very very limiting in terms of the programming environment compared to an ARM. It will be slow and very constrained in memory. A MEGA has 8K of ram to work with. A straight port of any substantial ARM application would be tough.

First, I'm surprised that the ARM board is considered expensive and a power culprit given that you have a GPS and satellite modem. Those cannot be cheap in terms of price or power consumption. Second, you say you have 4 UART's but you only mention using one of them. Do you really need 4 UART's built-in to the processor?

If you only need 1 UART, 2 ADC's, 2 GPIO's, and MicroSD interface then a basic Arduino will do. You can put it to sleep just like an ARM for minimal battery power consumption.

--
The Ruggeduino: compatible with Arduino UNO, 24V operation, all I/O's fused and protected

TdeP:
I work at the Scripps Institution of Oceanography. Our group builds small (basketball size) drifting wavebuoys.

What sort of quantity are you talking about here? If you're making these in dozens or hundreds it will probably be worth making your own Arduino clone with the hardware and circuits you need. The standard Arduino boards are really more appropriate imo for prototype development rather than production. Nothing stopping you from using them in production too, but it's an expensive approach.

thank you for your informative replies. I am using two UARTS, one for the GPS receiver and one for the Iridium satellite modem. The ARM board cost me roughly $250 each, and has lots of stuff I don't need. We've worked with the manufacturer to include a "sleep" mode, in which the ARM board still draws 4mA. We put the buoy to sleep for 3 hours, it wakes up, samples, computes spectra, and then transmits the spectra back via Iridium. All that takes about 20 minutes, so we really only power on the GPS for 20 out of 180 minutes, and the Iridium modem for about 5 out of 180 minutes. We want to deploy them and have them drift for months, any power savings (especially in sleep mode) just makes the buoy's live longer at sea. We have made 100+ and have lots of interest for hundreds more.

I don't know if Arduino is the way to go, just asking you experts what you thought.

TdeP:
The ARM board cost me roughly $250 each, and has lots of stuff I don’t need.

You can buy quite a few Arduino clones for $250. At those quantities I imagine it would be cost effective to have your own PCBs made up to incorporate all your hardware into the one board.

By the way, do you know if anyone has looked into making these wave powered? They only need milliamps on average and it might not need much to power them indefinitely.

I don’t know if Arduino is the way to go, just asking you experts what you thought.

Probably not then, since the benefit of Arduino is the ease of prototyping and availability of add-on hardware, tutorials, etc. You don’t need any of the above: you already have a fully-developed platform, all the hardware you need, plus you have working software for the ARM which would have to be redeveloped and retested for the Arduino.

It sounds like you just need to cost-reduce the board ($250 is truly excessive especially in qty. >100) and cut the current down from 4 mA a bit (you should be able to easily get it <1mA). Both are quite doable.


The QuadRAM shield: add 512 kilobytes of external RAM to your Arduino Mega/Mega2560