[Ken Shirriff] is no stranger to the pages of Hackaday. His blog posts are always interesting, and the recent one talking about the PocketBeagle is no exception. If you are old enough to remember the days when a Unix workstation set you back tens of thousands of dollars, you won’t be able to help yourself marveling at a Linux computer with 45 I/O pins, 8 analog inputs, 512K of RAM, and a 1 GHz clock, that fits in your pocket and costs $25. What’s more the board’s CPU has two 200 MHz auxiliary CPUs onboard to handle I/O without having to worry about Linux overhead.

These last parts are significant, and although the Beagles have had this feature for years ([Ken] talked about it earlier), the access and communication methods for using these slave processors has become easier. [Ken] shows a small snippet of C code that outputs a 40 MHz square wave no matter what the Linux OS is doing. In this way you can use Linux for the parts of your application that are not that critical, and use the slave processors to handle real time processing.

The code for the slaves is easy enough to understand, too, since you program them in C. Here’s the square wave code:

void main(void)
 while (1) {
 __R30 = __R30 | (1<<1); // Turn on output 1
 __R30 = __R30 & ~(1<<1); // Turn off output 1

Unlike its big sibling, the PocketBeagle lacks a network port and video output. However, when plugged into USB it presents an IP address through which you can gain shell access. You can also use the onboard serial port, or even plug in a USB network card, wired or wireless.

It is easy to imagine we will see plenty of little serial protocol analyzers and scopes that will fit on a keychain with these devices. We looked at the device ourselves recently. If small and cheap isn’t your thing, don’t despair. There’s always the X15.

Source link