BBB is a SBC (Single Board Computer)
- When a single piece of circuit board, comprises most of the personal Computer hardware/software components, then it is called as a SBC. Am335x has a Cortex-A8 (A 32 bit MPU) where we run Linux & other HLOSes.
Beagle Bone Black Initial Boot up Video
- Understanding various sub systems of AM335x (1GHz ARM® Cortex-A8) SOC such as GPIOs, I2C, SPI, MMC, etc...
- Understanding ROM–Uboot-Kernel boot process on Linux-ARM systems and testing.
- U-Boot, MLO, SPL explanation and testing.
- Linux device tree
- Understanding platform devices and how it works.
- eMMC OS updating and booting new Debian OS.
- Interfacing external LEDs, temperature sensor, Acceleration/Gyroscope such as MPU 6050 or ADXL345 and code development.
- Using HTTP, the sensors can push numeric or alphanumeric data to the server, where it can be processed and visualized.
- Beaglebone networking
- Serial log (UART) used minicom tool
- SOC stands for System on Chip. As the name indicates, a single chip contains most of the essential computing /communication /storage engine of the computing world, like Flash memory, Graphics processing engine, the image processing engine, the USB communication engine, RS232, SPI, I2C engine and much more. The heart of the SOC is a processor.
- For example AM355x SOC is powered by ARM cortex A8 processor.
Hardware | Sortware | Reference |
---|---|---|
Beaglebone Black Rev.C | Ubuntu 18.04 | Exploring BeagleBone Tools and Techniques for Building with Embeddded Linux ®Derek Molloy |
MPU6050 | VSC or Vim | AM335x ARM® Cortex™-A8 Microprocessors (MPUs) Technical Reference Manual |
ADXL345 | Cross compile | AM335x Datasheet |
Button | BusyBox | Beagleboard Cape Expansion Headers |
Leds | Buildroot | BeagleBone-Black System Reference Manual |
74HC595 | Minicom | MPU-6000/MPU-6050 Product Specification |
TMP36 | GParted | ADXL345 Datasheet |
FT232RL USB Serial | TMP36 Datasheet | |
SD card (>4GB) | 16x2 LCD HD44780 Datasheet | |
RTC-DS3231 | RTC-DS3231 | |
GPS-Neo6M | MPU-6000 and MPU-6050 Register Map and Descriptions Revision 4.2 |
- CGI using C++ on the BeagleBone
- Introduction to the BeagleBone Black Device Tree
- The Beaglebone Black and Device Tree Overlays
- Sharing internet using Network-Over-USB in BeagleBone Black
- Because it's an Open Source Platform (i.e open hardware board), taht makes a big difference if you need to redesign a complete board with only your needed functionnality. The number of GPIO pins available makes it amazing for extending the boards capability.
- For interacting with the physical world, the BB has 7 analog input channels, while the RPi has none. The BBB has a Programmable Realtime Unit (PRU) Subsystem that allows for much faster GPIO usage.
- You can also install Android relatively easy onto here so if that’s a deal breaker then Beaglebone is for you. However, I did find Android a little slow on the Beaglebone. I would personally pick the Beaglebone Black if I were looking into more device or circuitry based projects.
- Most of the companies ,what they do is , they take the BBB hardware design, like part numbers, schematics , BOM etc and they add customer specific add-ons or features then release the product to the market.
- When the hardware team is working on the new hardware, the software team will not sit idle, they test their software, drivers, and applications on reference ( such as Beaglebone-Black ) board, which greatly reduces the time to release the final product in the market.
1. U-Boot: this is the most often used bootloader in embedded systems and it’s recommended for BBB.
We will use upstream U-Boot, as it supports BBB.
2. Linux Kernel: it’s a main part of Linux OS. We will use upstream kernel, as it supports BBB.
3. BusyBox rootfs: it’s minimal, so it’s the best choice for understanding the crucial OS parts.
It can be useful in real work for testing, debugging and isolating the bugs, due to its minimalistic
nature. It also often can be found in networking devices (routers, etc), and is used as initramfs
in desktop GNU/Linux distributions.
- Beagle Black comes with a 1GHz AM3359 ARM Cortex A8 processor which uses ARMv7 instruction set
- Raspberry Pi 3 has a 1.2GHz 64-bit quad-core ARMv8 CPU.
-
Preparing the Tools
-
Obtaining and Building the Software
-
Flashing
-
Booting