I’m currently a large user of the Maple processor by Leaf Labs (http://leaflabs.com/devices/maple/) but i’m looking for a more powerful platform to start using. One major thing i’m looking to do is use the timers integrated into the Arm microcontroller to trigger interrupts. Luckily using the Maple, this is extremely easy thanks to the way the libraries have been written.
How hard is it on the Beaglebone Black to set up interrupts, they only need to be interrupts on a timer update. I’m looking at interrupt rates of around 40-50kHz with as little jitter as possible.
This sounds like a job for something with no OS. Depending on how powerful you need it to be, you might be better off with an Audrino, an ARM M3 or maybe a PIC.
There is TI Starterware for the BeagleBone (or more specifically for the processor on the BeagleBone), but I don't know how good it is, or how much it costs.
Fast operation, low latency, determinism and low jitter are not goals for the faint hearted if you wish to use Linux. There would be kernel work involved and a good understanding of the internals would be required.
Depending on what you wish to do, maybe a dual processor system would be the right solution, your Maple for the real-time portion of the system, and then offload data periodically to the BeagleBone to do some processing, display management, or whatever you need...
Take a look at the the PRU, which is a dedicated IO processor (actually
two of them) which can provide real time precise control of the IO lines
and which can then communicate with the main CPU. You have to program
it in its own assembly language, but there are plenty of examples on