The hardware component for Embedded Apprentice Linux Engineer (E-ALE) program is a PocketBeagle board paired with an accessory board named BaconBits. The PocketBeagle was released a few months ago and is now available for purchase from the usual retailers that cater to the electronic hobbyist & engineer market. BaconBits is more rare - this project was only recently completed to turn the PocketBeagle (which does very little by itself) into a development board for easy experimentation.

When we power up the PocketBeagle for this course, we are presented with an introductory screen offering to take us through a few tutorials that serve as an introduction to the world of physical world programming. In the interest of size and cost, the PocketBeagle  itself has very few physical peripherals, so interaction with the physical world requires wiring up external components.

BaconBits consolidates components required for many examples into a single circuit board so we won't have to worry about breadboard wiring for the relevant exercises. From simple LED and potentiometer to peripherals beyond the basics. There's an accelerometer available to practice I2C communication, and a 2-digit 7-segment LED to practice SPI communication.

PocketBeagle with BaconBits

What turned out to be the most important, at least in several E-ALE sessions, is the FTDI serial to USB bridge on board the cape. Serial console to the PocketBeagle is a lower-level interface and absolutely required when we got into the USB Gadget unit of the training. Configuring PocketBeagle's USB behavior requires taking the existing USB functionality (network connection and mass storage) offline and replacing them with the interfaces in the labs. This means PocketBeagle's HTTP-based Cloud9 IDE and other network-dependent connections like SSH won't work. Low level serial is all we have left to communicate with PocketBeagle and work through exercises.