Summary, Conclusion, Recommendation
The following two charts provide a summary of my conclusions after an initial period of "hands-on" evaluation.
- Cost does not seem to be a huge issue given that all of the solutions are close in terms of required investment.
- Customer requirements that demand a high degree of computation for analysis could make the single-board computer alternatives attractive given the limited memory available on the Arduino boards.
- The Arduino Mega would be the recommended choice if an Arduino were to be used given it has much more memory than the Uno.
- The Arduino provides the most simple hardware solution though it’s reliance on “C” as a development language, and without an IDE as good as the BeagleBone Black, adds complexity on the software side.
- The Raspberry Pi, with an Arduino, provides a very flexible solution but at the cost of complexity with two hardware environments and two languages.
- The Raspberry Pi, with an ADC, was a bit more challenging to integrate than was expected though in most other respects it has been easy to work with to date..
- The BeagleBone Black could provide the best overall solution from a hardware and software complexity perspective though it’s user community does not seem as strong as that of the Raspberry Pi.
- At this point in the investigation I would recommend the Arduino Mega with an external ADC or the BeagleBone Black.
- While the BeagleBone Black merits further investigation, particularly around the user interface, it has been very impressive to date:
- Combines features of Raspberry Pi and Arduino in one package,
- Includes 12bit resolution on board with a high sample rate,
- Looks and feels more “industrial strength” than the Raspberry Pi (and is faster),
- Provides a very user friendly development environment with some characteristics similar to Visual Basic,
- Allows for easy porting of code from Arduino given language similarities.