The Octavo Systems OSD3358-SM combines the TI 3358 Sitara processor, 512MB of RAM, power management and EEPROM. In the photo above, this package has a white label and dominates the circuit board. You can also compile a kernel from scratch, set up U-boot, and build a file system on the SD card. You what is bitcoin mining modules meaning also use a FTDI serial adapter such as the Adafruit FTDI Friend.
The diagram may seem confusing at first, since each pin has up to three different functions shown. Note that the diagram shows the headers from the component side of the board, not the silkscreened side of the board. GPIO 59 is on the right in the diagram and on the left below. So make sure you’re using the right header!
One tricky feature of the Sitara processor is that each pin has up to eight different functions. The solution is a pin mapping system that lets the user choose which functions are available on each pin. If you need to change a pin assignment from the default, the config-pin command will modify pin mappings. Some examples will be given below. Pins can also be configured at boot time using a “U-Boot overlay”. The pins can be easily controlled by writing to pseudo-files.
An LED connected to header P1 pin 33 can be controlled through GPIO 111. At the same time, the ARM processor gives high performance and a complete Linux environment. Although the PRUs are not as easy to use as an Arduino, they can be programmed in C, using the command line or Texas Instruments’ CCS development environment. Note that the PRU output is controlled by modifying a bit in register R30. This will blink the LED at 40Mhz, unaffected by any other tasks, context switches or interrupts.
For the full code and details of how to run it, see my github repository. This LED example illustrates two key advantages of using the PRU versus controlling a GPIO pin from Linux. First, the PRU code can operate much faster. Second, the GPIO code will produce an uneven signal if the CPU is performing some other Linux task. If you can handle milliseconds of interruption, controlling GPIO pins from Linux is fine. But if you need exact cycle-by-cycle accuracy, the PRU is the way to go. Plug a USB Micro-B breakout board into the Pocket Beagle as shown below, connect a USB OTG host cable and your USB port should be ready to go.
It is connected to pins P1_7 through P1_15. For instance, you can plug in a flash drive. Six of them take an input from 0 to 1. 8V, while two take an input from 0 to 3. Be careful that you don’t overload the input. Change the number in voltage0 to select the input.