I have some experience with Arduino, but not (yet) with other AVRs or Raspberry/Orange.

I want to make a project with some slave devices (mostly Arduino Unos, one Arduino Mega). These all need to communicate with a controller.

This controller has about the following requirements: - It need to respond every 5 ms to some messages from the devices, within the next 5 ms. - It needs about 128 KB RAM space, but more would be more comfortable (although 1 GB is enough). - I need quite some 'programming' space (like FLASH) - The program that needs to run on it will be reasonable complex, so using a nice programming language would be convenient (Python/Java/C++) - SD or other nonvolatile storage is mandatory - nRF24LR01+ 2.4 GHz RF Transceiver - Like upto 8 LEDs for status showing - WIFI would be nice - Using an adapter (12V/2A?) would be good, no intention to run it on batteries

I think I can do it with a Teensy or Due, but those are reasonable expensive. Another option is an STM32 kind of AVR.

However, I an noticed Orange Pi Zero, which are very cheap. But I wonder if I get myself in trouble? I know Linux commands, never installed it on a computer though. Someone made a remark in another related question to go for a stronger AVR, but afaik an Orange should be suited very well for this (seeing the limited electronics involved).

  • 2
    I am no expert, but I'd be concerned about getting 5ms response times out of a non-realtime OS. Your choice may come down to which OS to run on a RPi to hit that target. – bobstro Jul 17 '17 at 16:38
  • 1
    Welcome to Raspberry Pi! Please take the tour and visit the helpcenter to see how things work here. Note that other fruits beside the Raspberry Pi - that includes apples and oranges - are off-topic here. If you want to rephrase your question to be focused on the Raspberry Pi you can edit it and call for re-open. – Ghanima Jul 17 '17 at 19:41

Your program will likely have to higher requirements regarding to RAM and storage than on an MCU. But this sounds like no real match.

As you stated to not have that much experience with Linux (not even using terminal on macOS?), I highly encourage you to grab a Raspeberry Pi over an Orange Pi. There you get an up-todate Linux which is made specially for the device. Most things work out of the box with a multitude of tutorials out there if you want to do some special thigs, like SPI (which regular computer usually don't do).

Python works out of the Box with Raspberry Pi. You can quickly evaluate if it offers you the speed you want. Otherwise grab for C/C++ as there are all the required libraries to do SPI and other GPIO related stuff there.

In general I don't see anythin that should cause headache with your requirements.

| improve this answer | |
  • I have knowledge with using Linux commands (as a user, not super user mostly), so in that sense I don't expect too many problems. Using Python sounds very convenient (especially if I don't have to worry much about RAM when using a Raspberry). I would have to see how expensive they are exactly, i.e. what model would fit best). – Michel Keijzers Jul 17 '17 at 15:08
  • Although I decided not to go with Raspberry (because of some 'warnings' of others about possible 5 ms latency problems), I accepted the answer since I learnt from it and it seems except for this issue it would be the way to go. – Michel Keijzers Jul 18 '17 at 15:45

Not the answer you're looking for? Browse other questions tagged or ask your own question.