BeagleBone Blue Robotics Controller Kit - Linux - Review

Table of contents

RoadTest: BeagleBone Blue Robotics Controller Kit - Linux

Author: ninjatrent

Creation date:

Evaluation Type: Development Boards & Tools

Did you receive all parts the manufacturer stated would be included in the package?: True

What other parts do you consider comparable to this product?: The BeagleBone Black Wireless or Raspberry Pi with the use of additional motor/servo driver boards.

What were the biggest problems encountered?: The various JST connections can be a hassle to purchase separately. At the time of this review, there is only one retailer that offers a complete wiring bundle for the BeagleBone Blue. There is a need for better documentation of the pinout of the connections on the BB Blue.

Detailed Review:

BeagleBone Blue Robotics Controller Kit

image

Will robots inherit the earth? Yes, but they will be our children.

MARVIN MINSKY - Scientific American

Introduction

 

 

image

    The 1984 Magic Mike II was my first robot.

image

  Another influential toy from the 80's.

 

The application of robotics has become an integral part of our society.

image

Robots, once the subject of science fiction, now a critical asset to humanity.

There are robots everywhere, though often overlooked.

image

But they are there, manufacturing many of the products we use everyday.

 

image

They can survive in harsh conditions and environments that would otherwise be harmful, even lethal to us humans.

image

Robots can do many things that we can not, and often more efficiently than we can.


As long we provide our robot friends with the energy they require, the robots will always be ready to complete the task assigned, right?

 

image

 

Well, it's not that simple. First we need to design the robot. Then we can talk about a job.


image

In 1898, Tesla demonstrated a boat that used a coherer-based radio control—which he dubbed "telautomaton"—to the public during an electrical exhibition at Madison Square Garden. The crowd that witnessed the demonstration made outrageous claims about the workings of the boat, such as magic, telepathy, and being piloted by a trained monkey hidden inside. Tesla tried to sell his idea to the U.S. military as a type of radio-controlled torpedo, but they showed little interest.

image

   The Protector USV

image

From our imagination, Robots have become reality.

With our efforts, the future of robotics will surpass imagination.

 

About BeagleBoard.org and the BeagleBoard.org Foundation

 

image

 

    The BeagleBoard.org Foundation is a US-based non-profit corporation existing to provide education in and promotion of the design and use of open-source software and hardware in embedded computing. BeagleBoard.org provides a forum for the owners and developers of open-source software and hardware to exchange ideas, knowledge and experience. On occasion, BeagleBoard.org provides for the promotion of communication with other individuals interested in open-source software and hardware.

 


    On July 28, 2008 BeagleBoard.org was born with its first low-cost development board offering: the BeagleBoard. Its birth began the dawn of a new era. One in which both new and experienced developers alike had access to the most powerful processors in the market. An era in which creativity and ingenuity was not hampered by the price of a development board. An era in which “all for one and one for all” truly became the mantra of an open-source community that became united on BeagleBoard.org.image


    In the five years of its existence, four low-cost open hardware and software development boards utilizing the latest Sitara processor technologies have been created, including the new BeagleBone Black. With a 1GHz Sitara AM3358 processor, a developer can boot Linux in under 10 seconds and get started on development in less than five minutes with using a single USB cable.

 

The BeagleBone Black Wireless

 

image


image

BeagleBoard.org’s “BeagleBone Black Wireless” SBC uses Octavo’s OSD3358 SiP module and replaces the standard BeagleBone Black’s Ethernet with 2.4GHz WiFi and BT 4.1 BLE.


image

 

BeagleBone Black Wireless is the first SBC to incorporate the Octavo Systems OSD3358 SiP (system-in-package) module, “which integrates BeagleBone functionality into one easy-to-use BGA package,” according to BeagleBoard.org. Announced on Sep. 26, the OSD3358 SiP integrates a TI Sitara AM335x SoC along with a TI TPS65217C PMIC, TI TL5209 LDO (low-drop-out) regulator, up to 1GB of DDR3 RAM, and over 140 passives devices including resistors, capacitors, and inductors, within a single BGA package. The Linux-driven hacker SBC also adds TI WiLink 8 WL1835MOD wireless module with 2.2 MIMO.



  The open source BeagleBone Black Wireless SBC is designed in CadSoft EAGLE, and is software, hardware, and mechanically compatible with the (presumably Rev. C) BeagleBone Black. The board’s dual 46-pin headers expansion interface supports all existing BeagleBone Black capes, says the project.


The BeagleBone Black Wireless is otherwise identical to the BeagleBone Black, except that it adds two more status LEDs, for WiFi and Bluetooth. The SBC retains the 4GB eMMC flash with pre-installed Debian Linux, as well as the microSD slot, micro-HDMI, serial debug, and USB 2.0 host and mini-USB client ports. Other details are similar, including reset and power buttons. Additionally, like the BeagleBone Black, the BeagleBone Black Wireless has 512MB of DDR3 SDRAM, which in this case is part of its OSD3358 SiP module.


Birth of the Beaglebone Blue

image

      To optimize BeagleBone for education, BeagleBone Blue was designed to be integrated with many different components used in robotics and machine control, including connectors for off-the-shelf robotic components. For education, this means you can quickly start talking about topics such as programming and control theory, without needing to spend so much time on electronics. The goal is to still be very hackable for learning electronics as well, including being fully open hardware.

BeagleBone Blue's legacy is primarily from contributions to BeagleBone Black robotics by UCSD Flow Control and Coordinated Robotics Lab, Strawson Design, Octavo Systems, WowWee, National Instruments LabVIEW and of course the BeagleBoard.org Foundation.

      BeagleBoard.org first showed off a prototype of its robotics-targeted, community backed BeagleBone Blue back in Jan. 2016. The BeagleBone Black spin-off was designed and developed in coordination with the UCSD Coordinated Robotics Lab, and has been tested by hundreds of students.

    The BeagleBone Blue runs a Debian distribution that uses a real-time Linux kernel, and it also supports Ubuntu Core (“Snappy”). The board can be further developed with robotic-specific platforms like ROS and ArduPilot, and you can build GUIs with the Cloud9 IDE on NodeJS with BoneScript.

      The BeagleBone Blue has largely retained the specs of the prototype with one major exception. The TI Sitara AM3358 SoC, which is also found on the BeagleBone Black, has been replaced with the same Octavo Systems OSD3358 SiP (system-in-package) module used on the BeagleBone Black Wireless.



Octavo Systems OSD335x SiP TI Sitara AM335x 1GHz ARM® Cortex-A8 Processor

http://octavosystems.com/octavo_products/osd335x/

image

OSD335x Features

Integrated into a single BGA Package:

Texas Instruments Sitara™ AM335x ARM® Cortex®-A8 Processor

up to 1GB DDR3L Memory

TPS65217C Power Management IC

TL5209 LDO

Passives

TI AM335x Features:

up to 1GHz

8 Channel 12-bit SAR ADC

Ethernet 10/100/1000 x2

USD 2.0 HS OTG + PHY x2

MMC, SD and SDIO x3

LCD Controller

SGX 3D Graphics Engine

PRU Subsystem

Access to all AM335x Peripherals

CAN, SPI, UART, I2C, GPIO, etc.

Power In: AC Adapter, USB, or Single cell (1S) Li-Ion/Li-Po Battery

Power Out: 1.8V, 3.3V and SYS (Switched VIN)

AM335x I/O Voltage: 3.3V

400 Ball BGA (27mm x 27mm)

20 x 20 grid, 1.27mm Pitch

Case Temp Range: 0° to 85°C, -40° to 85°C


image

      The Octavo Systems OSD335x System-in-Package (SiP) device is the first device in the OSD335x Family. It integrates the Texas Instruments Sitara ARM® Cortex®-A8 AM335x Processor, DDR3 memory, TPS65217C PMIC, TL5209 LDO, and all needed passive components into a single 27mm X 27mm BGA package.

 

    The OSD3358 SiP integrates the 1GHz Cortex-A8 AM3358 SoC along with a TI TPS65217C PMIC, TI TL5209 LDO (low-drop-out) regulator, 512MB DDR3 RAM, and over 140 passives devices including resistors, capacitors, and inductors, within a single BGA package. SiP’s cost more than SoCs, but they simplify PCB layout and reduce the number of components required by an SBC design, thereby reducing risks and accelerating custom embedded development.

image

With its SiP processor, lack of Ethernet, and TI WiLink 8 WL1835MOD module with WiFi and Bluetooth 4.1 LE, the BeagleBlue Blue is like a BeagleBone Black Wireless with additional motor control and battery support. For motor control, you get 4-amp regulated, PWM-driven 8x servo and 4x DC motor outputs, as well as 4x quad encoder inputs. There’s also a 9 axis IMU and a barometer. The other key feature for robotics is the 2-cell (2S) LiPo battery connector and 9-18V charger input.


Getting started with the Beaglebone Blue


image

https://beagleboard.org/blue

https://github.com/beagleboard/beaglebone-blue

BeagleBone Blue Projects

ArduPilot
Mirko Denecke describes how he runs ArduCopter. You can also look how Jason built
his.

EduMIP
is the world’s most extensible low-cost open platform for learning embedded control & robotics.

EduMIP ROS
Using Robot Operating System (ROS) with a balancing robot (EduMIP).

Bluetooth speaker
Connect a Bluetooth speaker.

Robot controlled webcam
Automatically start mjpg-streamer.

Add 2.4" LCD Connect and configure an Adafruit 2.4" LCD breakout board.

See More Projects »


BeagleBone Blue Support

Frequently asked questions (FAQ)
First step: connect your Beagle to this site

Hardware, Software and Ecosystem Discussion Groups
Collaborate and find support on the Beagle community forum

IRC Group Chat
Live chat with other open-source enthusiasts

Books
Read books to help you learn fundamental concepts. Be sure to check out the code examples for
BeagleBone Robotics Projects, Second Edition


Hardware Specs and Materials

Browse the BeagleBone Blue Github page to find all available hardware specifications such as:

 

Robotics hardware API (libroboticscape)

Recommended accessories

Autodesk EAGLE CAD

Installing the Software

Download the latest Debian Stretch IoT image from https://beagleboard.org/latest-images.

 

Flashing firmware

The instructions for flashing the BB Blue's eMMC are located at

https://github.com/beagleboard/beaglebone-blue/wiki/Flashing-firmware

 

Examples and APIs for programming BeagleBone Blue

Programming in C: http://www.strawsondesign.com/#!manual-install

Programming in Python: https://github.com/mcdeoliveira/rcpy

Connecting to the WiFi Network

To assign the Beaglebone Blue a Static IP Address

From command line

# Check network connectin status

    ifconfig 

 

# Check status of WiFi and Bluetooth

    connmanctl technologies

 

# Command will enable "connmanctl" privileges.

    sudo connmanctl

 

# Command might return "already enabled".

    enable wifi

 

# Command will scan WiFi

    scan wifi

 

# Command will disable wifi tether. Might return "already disabled".

    tether wifi disable

 

## The following command will list available networks. Copy the "wifi_??????_??????_managed_psk" of the network that you wish to connect the BB Blue. 

    services

 

# Command will turn agent on. 

    agent on

 

# In the following command, replace "wifi_??????_??????_managed_psk" with the wifi_managed_psk of your network.

    connect wifi_??????_??????_managed_psk 

 

## Enter network passphrase if required.

 

# In this command, replace "xxx.xxx.x.xxx" with the desired IP Address of the BB Blue. Replace "yyy.yyy.y.yyy" with the ip address of the wireless router (gateway).

    config wifi_??????_??????_managed_psk --ipv4 manual xxx.xxx.x.xxx 255.255.255.0 yyy.yyy.y.yyy --nameservers 8.8.8.8

 

# This command will exit the connmanctl interface.

    quit

 

# Confirm change of the BB Blue's ip address 

    ifconfig

 

# Test the BB Blue's network connection

    ping www.google.com

 

# Stop ping.

    Ctrl + C 

 

# Reboot 

    sudo reboot

 

BeagleBone Blue and Ardupilot

http://ardupilot.org/


image

Prebuilt ArduPilot Image for the BeagleBone Blue

The following link contains files for BeagleBone Blue ArduCopter, ArduPlane, and ArduRover

Download ready the compiled BeagleBone Blue ArduPilot file from http://bbbmini.org/download/blue/


  The EDUMIP Kit


  eduMIP is a highly extensible low-cost open platform for learning Embedded Control & Robotics. It works with the BleagleBone Blue, or with the BeagleBoard.org Robotics Cape coupled with a BeagleBone Black or Black Wireless. EduMIP was developed in a research and teaching setting in the UCSD Coordinated Robotics Lab. image


image

eduMIP is compatible with Python, ROS, MATLAB® & Simulink®, and LabVIEW®. eduMIP's robust, consumer-grade chassis was developed in collaboration WowWee®, and several extensions are being developed in collaboration with Texas Instruments®. eduMIP is easy to extend via custom CAD/3D printing and custom PCB design/fab, and can interface easily, via the available JST connectors and its extensive built-in software library, to millions of industry-standard sensors and actuators communicating over: USB, I2C, SPI, CAN, UART (GPS, DSM2), PWM (servos, ESCs), GPIO, ADC.

The eduMIP is available for purchase from https://www.renaissancerobotics.com/eduMIP.html

 

Recommended Accessories

https://github.com/beagleboard/beaglebone-blue/wiki/Accessories


Arrival of the BeagleBone Blue

image

The BB Blue arrived from Newark Element 14 on time, as scheduled.

  Inside of the Newark box, is the box containing the BeagleBone Blue.

BB Blue's box is of high quality, very similar to the box of the BeagleBone Black Wireless.

Nestled inside of the box is the BeagleBone Blue, eagerly waiting for power.

First it will be neccessary to remove the factory - sealed, ESD bag.

 

Close up look of the BeagleBone Blue

image

image

    BeagleBone Black Wireless, meet BeagleBone Blue. Now play nice.

 

image

   Roll over

imageimageimageimage

The beagleboard.org sticker would curl up on the left edge after the processor has warmed up.

image

Here we can see the lipo connector and charge controller, IMU, Baro, Buttons, and the WL1835MOD

image

In this department, we have 8 x 6V servo, 4 x motor control, 4 x quadrature encoders and a boot from SD button.

image

   On the left 4 x UI buttons, and 6 x LED. And to the right is connection central.

image

GPS, GPIO, I2C, SPI, CAN, UART, ADC, DSM and PWR connections.

 

 

Looking over the BB Blue, it is apparent that a majority of the connections are of various JST types. The "Serial and Analog Connections" section found in the "BeagleBone_Blue_sch.pdf" document can be used to determine the pinout of these connections.

https://github.com/beagleboard/beaglebone-blue/blob/master/BeagleBone_Blue_sch.pdf


image

There is a Conformal Coating on the PCB which can be seen under UV light.

image

This is typically found on RC components as a protective coating.

 

BeagleBone Blue Connectors

  https://github.com/beagleboard/beaglebone-blue/wiki/Accessories

 

image

 

The 8 x 6V Servo Connections are the standard servo connection.

4 x 2-pin JST ZH (1.5mm pitch) connectors for Motor Control.

8 x 4-pin JST SH (1mm pitch) connectors for Encoders, UART, I2C, CAN, and PWR.

4 x 6-pin JST SH (1mm pitch) connectors for SPI, GPS, GPIO, and ADC.


https://www.renaissancerobotics.com/JST_Jumper_Bundle.html


image

The Battery Connection is a 2S1P LiPo with 3-wire JST-XH (2.5mm pitch) charge connection.


https://hobbyking.com/en_us/turnigy-1000mah-2s-20c-lipo-pack.html


https://hobbyking.com/en_us/turnigy-1600mah-2s-20c-losi-mini-sct-pack-part-losb1212.html


Testing the BeagleBone Blue

The most recent Debian Stretch IoT image was written to a microSD card.

https://beagleboard.org/latest-images

 

A SSH connection was established between the BB Blue and a Raspberry Pi 3 terminal. 

 

After boot of the new image, a static ip address was assigned with the wireless network.

 

In order to test the onboard peripherals, the Robotics Hardware API (libroboticscape) was installed.

http://www.strawsondesign.com/#!manual-install

 

With this package installed and upgraded, it is very easy to begin receiving data from the 9 Axis IMU and BMP280 Barometer.

image

To test the Barometer

 

rc_test_barometer

 

 

Temperature readings were slightly affected from heat generated by the BB Blue's processor. 

 

In order to use this sensor as an altimeter, some calibration will be necessary.

The method to do this is documented in the following link.

 

http://www.strawsondesign.com/#!manual-barometer

 

To test the IMU

 rc_test_imu


The next task is to test the 8 x 6V Servo outputs. For this test, a Micro Servo Pan Tilt Camera Gimbal was used.

image

 

Operation of the servos was first tested with power supplied to the BB Blue from a 12V 2.5A wall power supply. This is not recommended as the 12V power input is meant to charge the lipo battery. The servos were able to be controlled in this manner but the performance severely affected.

 


The BB Blue was then connected to a 1600mAh 2S1P lipo battery and again the the servos are tested with favorable results.

 

The BeagleBone Blue is very capable of controling the micro servos with power supplied from the lipo battery.


The lipo battery arrived with a 30% charge from the factory. The charge circuit on the BeagleBone Blue effectivly brought the battery to full charge in under an hour.

 

Currently I am working on the configuration of a GPS sensor and a few additional components with the BB Blue.

 

The results will be likely be posted here as an update to this review and /or in a seperate blog post in the BeagleBoard forum of Element 14.

 

After participation in the Element 14 Road Test Review of the BeagleBone Black Wireless,

https://www.element14.com/community/roadTestReviews/2392/l/beagleboardorg-bbb-wireless-bbbwl-sc-562-review

I was eager to utilize the BBB W as the controller of my 1/10 scale RC Stadium Truck.

image

When it was announced the BeagleBone Blue up for Road Test Review, work immediately came to a halt on that project.

 

Could the BeagleBone Blue be the solution I've been looking for? This curiosity is what compelled me to apply for this RT.

 

As it turns out, in order to use the BB Blue as the controller of this specific RC truck, it will be necessary to replace the ESC and brushed motor with a brushless motor and ESC.

image

Unfortunately the ESC board and the radio receiver board are soldered together and heavy Conformal Coating

image

Along with the challenge of converting the vehicle to a brushless configuration, it will also be necessary to purchase new gearing, a DSM satellite receiver, a Spektrum – compatible transmitter, and a 2S1P lipo capable of powering it all.

imageimageimage

 

I have chosen a different approach.


The 2S1P lipo battery that I purchased for the BB Blue is meant for a 1/16 to 1/18 scale RC Short Course Truck. It might be easier to start here at this scale.image

image

 

I have constructed a chassis specifically for the BB Blue. There are a few components necessary for completion. I still need to purchase a 2-pin JST-ZH jumper cable to drive the motor and a micro servo to control steering.

image

imageimage


There are already a few BeagleBone Blue Quadcopter Drones in existence.

It would be interesting to replicate one of these designs.


       https://github.com/mirkix/ardupilotblue

 

     https://gist.github.com/jadonk/6080ca92d6e225eb89d33ad7744e1775

 

 

Update

 

Test Driving the BeagleBone Blue RTV

 

 

Summary


The BeagleBone Blue is a single board computer with great potential.

 

I am impressed with the design. It is a very innovative product.

 

As a SBC with integrated robotics control, it outperforms what is currently available.


With the built – in WiFi and Bluetooth, Motor and Servo control, and lipo battery charge circuit, the BeagleBone Blue is the best choice for building a robot or drone.

 

The JST connections required for the BB Blue can be a hassle to purchase seperately. There is a complete wire bundle available from https://www.renaissancerobotics.com/JST_Jumper_Bundle.html .

 

It will be very helpful to the end user, both in cost and time, if the distributors of the BeagleBone Blue can offer this JST wire bundle as well.

 

Although not confirmed, the BB Blue should be compatable with many of the robotics chassis commonly marketed for Arduino and Raspberry Pi.


The extensive documentaion and resources provide the user with a quick and easy path to project completion.


This having been said, there is always room for more. I have not been able to locate a System Reference Manual for the BeagleBone Blue. Given the BB Blue is a rather new addition to the BeagleBoard family, there is likely one in the works. There is also the need for a user friendly illustration of the pinouts.

 

Community support can be found in the BeagleBoard.org site and here in the Element 14 community.

 

Thank you for your time in reading this review of the BeagleBone Blue, and thanks to Element 14 and BeagleBoard.org for allowing me the privilege to work with this product.

 

Trent



Anonymous
Parents
  • Hi Trent,

     

    Thanks for the interesting read! And great work with your chassis for the BB-Blue.

    It is really cool that the board was useful for these mobile robotics uses with the LiPo battery.

    I hope we see more and more projects using this board, with such unique capabilities plus built-in ability for controlling motors its a powerful beast : )

Comment
  • Hi Trent,

     

    Thanks for the interesting read! And great work with your chassis for the BB-Blue.

    It is really cool that the board was useful for these mobile robotics uses with the LiPo battery.

    I hope we see more and more projects using this board, with such unique capabilities plus built-in ability for controlling motors its a powerful beast : )

Children
No Data