Hi, EE experts!
We are a small software company and we have an idea for a product which will need a hardware platform to run on.
As we want our product to be open for maker/hacker community, I now would like to take the opportunity and talk to you out there.
Unfortunately, I cannot yet disclose much details about the project (who knows, how it will go). It is related to audio streaming, but no heavy encoding/decoding, just raw PCM audio data.
I'll try to highlight some important points which might be affected by our choice.
At first we had an idea to use Raspberry Pi Compute module. Currently we are experimenting with Raspberry Pi B+ and it works fine, but it seems to be too powerful for our needs. We don't use its video core at all, and the CPU also is usually only loaded by 10-20. Also 4GB of eMMC flash means lots of unused space. Raspberry Pi Compute module is not the best for us - we'd be paying for unused resources.
But there is one thing we really like about Raspberry Pi Compute module - it is openness. A product based on it would be available to enthusiasts. Even flashing RPi Compute is pretty safe - just connect to USB and write the firmware to eMMC flash memory. It seems almost impossible to brick this device.
We'd like to find a cheaper, less powerful system-on-chip (SoC) or computer-on-module (COM) or just separate chips of CPU+RAM to use in our product, but we want to have the openness and almost fool-proof flashing of RPi. It would be fine to have some binary-only vendor specific drivers, if only the vendor would provide them to public or give us permission to distribute them at least in binary form (of course, open source would be the best, but let's be real - some SoC manufacturers want to keep some things secret).
Our product will require the following interfaces to the outside world:
- a WiFi b/g/n (with access point mode support) adapter
- a Bluetooth 4 adapter
- two Ethernet adapters in bridge configuration (ideally - two port hardware switch)
And internally we'll need and SPI port with support in Linux kernel. Also it would be great to have UART port for serial console.
Hardware float support will be needed for our custom software.
We could just look for the chips with good support in Linux kernel for the embedded platform of our choice and then look for the prices and availability in the market. But there are some SoCs with some of this functionality built-in, thus it might turn out to be cheaper than to use separate components. Correct me if I'm wrong.
Price is really important to us. The product won't be high-end device, so we'd like to keep the price low, but maybe having just a little bit of spare processing power for future possibilities.
If there are cheaper production ready, stable and open alternatives to Raspberry Pi Compute module, I'd be really grateful for your experience and expertise.