Full Review of the BeagleBone ‘EVB’ for Mindstorms EV3

BeagleBone EVB Cube Solver
PDF24    Send article as PDF   
The EVB is a shield (or called cape) for Beaglebone ‘Black’ (BBB). It fully support LEGO® MINDSTORMS® EV3 system, with both the hardware and software! The BeagleBone ‘EVB’ is compatible with all LEGO® sensors just like the EV3 Brick. 100% compatible! It allows the EV3 Virtual Machine (VM) to be run on the Beaglebone ‘Black’.

BeagleBone EVB

A couple of weeks ago I received a BeagleBone ‘EVB’ from the guys at Fat Cat Labs to test and review for them. What a great way to see in the New Year: a BeagleBone ‘Black’, EVB Cape and a LEGO Mindstorms EV3 kit.

The EVB Cape sits very nicely onto the Beaglebone ‘Black’, allowing good access to all the I/O connectors on both boards. The BeagleBone ‘EVB’ I received was a pre-KickStarter Launch version without the Perspex LEGO Compatible Mounting Cover. But with some Araldite, and a couple of Technic Connectors, I was soon up and running.

The BeagleBone ‘Black’ is a credit-card-sized Linux computer that can connect to the Internet and runs Operating Systems such as Android 4.0 and Ubuntu. With plenty of I/O and processing power for real-time analysis provided by an AM335x 720MHz ARM® processor, the BeagleBone can be complemented with capes (plug-in boards) to augment functionality. Find more.

The LEGO® Mindstorms EV3 Brick has ARM9 (TI Sitara AM180x) in it, so upgrading to BeagleBone ‘Black’ with ARM Cortex-A8 (TI Sitara AM335x) is definitely a step up, plus you have all of the expandability of BeagleBone ‘Black is a big plus!

The LEGO Mindstorms EV3’s Operating System is based on the famous GNU/Linux operating system. The main chip used is TI AM1808, and the most importantantly, Lego has released of all software and hardware as OpenSource. All this allowed the guys at Fat Cat Labs to produce the BeagleBone ‘EVB’ for all to enjoy via KickStarter.

Once you have the BeagleBone ‘EVB’ connected to the BeagleBone ‘Black’, connect a USB cable between it and your PC. For your PC to recognize the BeagleBone ‘Black’, you may need to install some drivers that can be found here: http://beagleboard.org/static/Drivers/.

Next I took a 4Gb micro SD Card and burn a copy of the LEGO Mindstorms VM v1.06 to it and installed it in the BeagleBone ‘Black’s SD Card Holder. I then powered up the BeagleBone EVB and was met with a clone of the LEGO Mindstorms EV3 Brick’d display on the LCD.

For my first project I decided on building a Rubik’s Cube Solver based on the MindCub3r by @DavidGilday. I carefully construct the robot by carefully following the build instructions and then downloaded and install the software described below.

Video of the original MindCub3r

Description of the Rubic’s Cube Solver:

MindCub3r software consists of three main parts:

  1. a project file: MindCuber-v1p4.ev3, containing the motor and sensor control program created using the standard LEGO MINDSTORMS EV3 graphical programming environment
  2. an executable program: mc3solver-v1p4.rtf, compiled from C++ that implements an efficient solving algorithm that can find much shorter solutions than the NXT MindCuber variants
  3. an EV3 application: “MC3 Solver v1p4“, that is used to launch the mc3solver-v1p4.rtf program

The main program and mc3solver-v1p4.rtf executable program communicate with each other via shared files on the EV3.

Note: release v1p4 uses the .rtf extension to enable the files to be downloaded using the standard LEGO MINDSTORMS EV3 software. The .rtf extension is intended to be used for files containing text so using if for the executable program is a work-around. Please do not try to open this file with a text editor.

MindCub3r uses the EV3 colours sensor in RGB mode to enable it to measure colours that cannot be distingished by the standard colours mode provided by the standard LEGO MINDSTORMS EV3 software. The colours Sensor RGB Block must be imported into the LEGO MINDSTORMS EV3 software to support this mode.

Once you have built the Original MindCub3r, remove the EV3 Brick and replace it with the BeagleBone ‘EVB’. Take note that you connect the Motor and Sensor cables to the correct ports on the BeagleBone ‘EVB’.

BeagleBoneEVB-CubeSolver
My BeagleBone ‘EVB’ controlled version of the MindCub3r

MindCub3r Software:

Note: to use the Download links below:

  • On Windows – right click on the link
  • On Mac – click on the link while holding the control(ctrl) key

Select one of the following from the pop-up menu:

  • Save link as…
  • Save Target As…
  • Download Linked File As…

Then choose a folder on your computer in which to save the file.

Install colours Sensor RGB Block:

Download the block, coloursensorRGB-v1.00.ev3b, to your computer. Note that this file may be renamed to coloursensorRGB-v1.00.zip during the download. If this happens, rename the file back to coloursensorRGB-v1.00.ev3b

Start the LEGO MINDSTORMS EV3 software and create a new, empty project.

Select the Tools menu and then Block Import.

  1. In the Block Import and Export dialog, select Browse.
  2. Find the file coloursensorRGB-v1.00.ev3b on your computer and Open it.
  3. Select coloursensorRGB-v1.00.ev3b from Select Blocks to Import and then select Import.
  4. To complete the installation, close the dialogues and exit from LEGO MINDSTORMS EV3 software.

Download MindCub3r Program:

  1. Download the appropriate file to your computer:

  2. Extract all the files from this archive. On a computer running Windows, find the file in Windows Explorer, click with the right mouse button and select Extract all…
    This archive contains:

    • the MindCub3r-v1p4.ev3 project file with the main program
    • the mc3solver-v1p4.rtf executable program
    • InstallMC3-v1p4.rbf to install an application to launch mc3solver-v1p4.rtf
  3. Start the LEGO MINDSTORMS EV3 software and select the File menu then Open Project.
  4. Find the MindCub3r-v1p4.ev3 project file and Open it.
  5. Download the MindCub3r program to the EV3 (but do not runit yet).
  6. Select the Tools menu and then Memory Browser.
  7. Select Brick (or SD Card if there is a micro-SD card in the EV3) and find and select MindCub3r-v1p4 in the Projects folder and then select Download.
  8. Find the folder on the computer where the files were extracted from MindCub3r-v1p4.zip. Select mc3solver-v1p4.rtf and Open to download this program to the EV3.
  9. Select Download again from the Memory Browser dialog.
  10. Find the folder on the computer where the files were extracted from MindCub3r-v1p4.zip. Select InstallMC3-v1p4.rbf and Open to download this file to the EV3.
  11. Close the Memory Browser dialogue.

Install the MC3 Solver Application:

This installs “MC3 Solver v1p4” application on the Brick Apps screen.

  1. Go to the Run Recent screen on the EV3.
  2. Press the right button on the EV3 to move to the File Navigation screen.
    Select the MindCub3r-v1p4 folder and press the centre button to open it. If there is a micro-SD card in the EV3, select and open the SD_Card folder first.
  3. Use the down button to Select InstallMC3-v1p4 and press the centre button to run it. The EV3 will make a short beep.
  4. Turn off the EV3 brick to ensure all the files are saved to the flash memory and then turn it on again.
MindCub3r is now ready to use!

Troubleshooting Tips:

Scanning:

If MindCub3r attempts to scan the cube 3 times and displays the message “Scan error” the following tips may help.

  1. MindCub3r is designed to work with an official Rubik’s Cube branded by Rubik’s. However, it should work with most cubes provided one set of stickers is white and the others are distinct colours. It is optimized to work with white, yellow, red, orange, green and blue stickers.
  2. Cubes with a white plastic body may scan less reliably that those with a black body but may work reasonably well if there are no other issues.
  3. A standard cube is about 57mm along each edge. MindCub3r will work most reliably with a cube this size although cubes that are only slightly larger or smaller may work. It has been known to solve some cubes as small as 55mm but not all.
  4. Make sure latest release of the MindCub3r software is installed including the latest enhanced firmware. Version v1p4 has some improvements in the position of the scan arm and the underlying algorithm for discriminating the colours.
  5. Check that the scan arm has been built exactly as shown in the build instructions. Small differences such as how the black 5-hole beams on either side of the scan arm are connected can alter the position of the colours sensor during the scan or even jam the scan arm so it stops during the scan. In particular, if the colours sensor looks as though it is over the edge of the cube or too close to the middle while scanning the corner or edge, please check the build instructions again.
  6. Make sure that the turntable is carefully aligned before inserting the cube as described here. This is required to ensure that the cube is positioned correctly under the colours sensor during the scan.
  7. Use new or well charged batteries as the reset position of the scan arm can be affected by low battery levels.
  8. Try the scan in dim lighting conditions as the colours sensor can become saturated in bright lights.
  9. Try to bend the cable connecting the colours sensor to the EV3 in its most natural direction (swap the two ends if necessary) and through the clip at the bottom of the scan arm to minimize any force that the cable applies to the position of the colours sensor during the scan.

Conclusion:

I was amazed how the flawlessly the Mindcu3r worked with the BeagleBone ‘EVB’. When it came to the software, the LEGO EV3-G Software worked as if a Mindstorms EV3 Brick was attached, instead of the BeagleBone ‘EVB’.

As far as I’m personally concerned, the ‘Backlight’ LCD Display is the BeagleBone ‘EVB’ best part. With my failing eyesight, I can actually read what is displayed on the LCD. I no longer need to loose my cool when it comes too operating my LEGO Mindstorms EV3 Based Robots.

One thing that will surprise you when you first turn the BeagleBone ‘EVB’ on, is the speed it boots. It boots in just a few seconds, compared with the LEGO Mindstorms EV3 which gives enough time to take a vacation while it boots up. And Shut-down is just as fast. It almost as quick as the old LEGO Mindstorms NXT.

Im very impressed with the whole package that the guys at Fat Cat Labs have put together. Why not save a lot of dollars and buy a BeagleBone ‘EVB’ instead of purchasing another Mindstorms EV3 Brick as you want be disappointed!

So head to the BeagleBone ‘EVB’ KickStarter Page and sing up for one now as they are going fast…..

I took the BeagleBone EVB powered Rubic’s Cube Solver at Brixhibition Burnie over the weekend of 24-26 January 2015. Both EVB and EV3 powered Cube Solvers were a real hit with the public. The public were able to take the Cubes out and scramble them, and then place the cubes back in the Solver. After 20+ hours of this treatment both Rubic’s Cube Solver performed flawlessly for the whole event!

 

Next Post

Setting up IO Python Library on BeagleBone Black

by Justin Coopärs Overview The BeagleBone Black is unique in that it has quite a few pins that are available on easy to use pin headers, as well as being ... Read more

Short URL: http://tinyurl.com/hqupkqb

Leave a Reply

Your email address will not be published. Required fields are marked *



Do NOT follow this link or you will be banned from the site!
error: Content is protected !!