Category Archives: LEGO Mindstorms

Using Custom EV3-G MyBlock Icons Images


In this tutorial, I will show you how to make custom MyBlock Icons, and MyBlock Parameter Icons. This is very useful because the MyBlock icons allow one to easily recognize in your programs. The tutorial is broken into two parts, MyBlock Icons, and Parameter Icons. You can only use this tutorial with the EV3-G software. The programs only display properly when you install your custom icons in the appropriate directory on your computer.

Before we begin, make a copy of the following directory: “..\LEGO MINDSTORMS Edu EV3\Resources\MyBlocks\images.

Parameter Icons

First you are going to open up a picture editing software so you can create an icon. When  creating the icon, keep in mind it needs to be 22×22 pixels. You can use pictures from the MyBlocks/images directory, or you can make you own icon from scratch. The icons need to be export as a .png image and save it in the MyBlock image directory. When naming the icon file, it has to be in this format: the word  “Identification”, Underscore, a 3 digit number, Underscore, Icon Name (no spaces, upper camel cased and underscores OK) , and “.png”. Example: Identification_100_TestBlock.png.The 3 digit number has to be an unused number in the range of, 100-199. Before the new icon shows up, you need to restart your EV3 Software, and then reopen it and your icon should be there!

MyBlock Icons

Open the picture editing software and make another icon, but this time it must measure 34×34 pixels. When done making the icon, the steps are a bit different than the parameter icons. Export the image again as a .png, but the naming is as follows; “PolyGroup”, Underscore, “3 digit number“, underscore, “icon name (No spaces, upper camel case, and NO underscores)” ,underscore, ”Diagram”, and ending with “.png”.   Example:  PolyGroup_019_TestBlock_Diagram.png.  The 3 digit number has to be an unused number ranging between, 002-019.

Next shrink the icon in the editing software to 25×25 pixels, and export it again with the same name but replace the word diagram with “Pallet”. Next make one more the same size but add a highlite color for a mouse over effect. Add an underscore after the pallet and add “MouseOver” when exporting. Finially, restart your EV3 software and the new MyBlock Icons should appear.

  • The Diagram icon is used when you view the icon in the MyBlock Creation Menu.
  • The Pallet icon is used when you pick a MyBlock from the MyBlock pallet.
  • The MouseOver icon is used when you scroll over the block in the MyBlock Pallet.

FIRST LEGO League Compatible Robot – Mark III

FLL-Robot Mark III - logo

This is third in a serious of FIRST LEGO League (FLL) Robot which can be made from a single LEGO Mindstorms EV3 (Home 31313) kit and a handful of other LEGO Technic Parts. It was built with the intention of being demonstration Robot that the team members of the Metal Minds Robotics Team I mentor could build at home with their own EV3 Kits.

This Robot is a development of the Mark II Robot with a number of refinements, and the addition of another Power Take Off point at the rear of the Robot. This later addition allows for two Powered Attachments to mounted on the Robot at one time. Another improvement which greatly improves the Robots Turn and Straight Line accuracy is the replacement of the Jockey Wheels with a pair of  “Angled Ball Joints“.

FLL Animal Allies: Climbing the Bio-mimicry Wall – Part II

Animal Allies Logo

After setting my new 2017 group of FIRST LEGO Leage (FLL) Students the “Bio-mimicry Wall Climbing Task” from the 2016 Animal Allies Challenge, I thought I should prove that it is possible to achieve. The Bio-mimicry Wall Climbing Task requires having the Robot lift its self up upon a wall with no part of the Robot touching the Challenge Mat. Easier than it sounds…

FLL Animal Allies: Climbing the Bio-mimicry Wall with Robot

Animal Allies Logo

After setting my new 2017 group of FIRST LEGO Leage (FLL) Students the “Bio-mimicry Wall Climbing Task” from the 2016 Animal Allies Challenge, I thought I should prove that it is possible to achieve. The Bio-mimicry Wall Climbing Task requires having the Robot lift its self up upon a wall with no part of the Robot touching the Challenge Mat. Easier than it sounds…

Preforming the Polygon Shuffle with a EV3 Gyroscope


A polygon is any 2-dimensional shape formed with straight lines. Triangles, quadrilaterals, pentagons, and hexagons are all examples of polygons. The name tells you how many sides the shape has. A polygon is any shape made up of straight lines that can be drawn on a flat surface, like a piece of paper. Such shapes include squares, rectangles, triangles and pentagons, but not circles or any other shape that includes a curve.

There are two main types of polygon – regular and irregular. A regular polygon has equal length sides with equal angles between each side. Any other polygon is an irregular polygon, which by definition has unequal length sides and unequal angles between sides.


Powering the LEGO Mindstorms Brick from a 9v Plugpack

I have been asked a number of times too how I power my Stationary and Development Robots from a 9 Volt, 5 Amp D.C. Plugpack connected to the Mains Power Supply. I prefer to have a Power Supply that can easily handle the demands put on it. A minimum rating of 3 Amps is needed if you plan running 4x Motors from the EV3 Brick.

LEGO Mindstorms EV3 Audio Streamed via Bluetooth Audio

Whilst displaying my Robots at a major Exhibition, I got to thinking that it would be great to pipe the EV3’s Audio to a Bluetooth Speaker, so my robot can be heard among the noise of a crowd.
Here are my notes so far on getting started with Connecting a LEGO Mindstorms EV3 Brick to a Bluetooth Audio Speaker:

  • Debian jessie is using BlueZ 5 and PluseAudio 5, which are fairly new. There were major breaking changes in these versions, so most stuff you find on the Internet will be for BlueZ 4/PulseAudio 4, so it does not work at all, so watch out.
  • BlueZ 5 dropped support for alsa [1], so the solution for now (until someone updates some bluez-alsa project for BlueZ 5) is to use PulseAudio.
  • PulseAudio 5 only supports the A2DP profile and not HSP/HFP [2] (although it his under development [3]).

Lets Start:

RGB LED Strip Controller for LEGO Mindstorms EV3 or NXT

Some may have seen my article, “Using WS2812B Addressable RGB LED Strips with Arduinos“, back in September? As can be seen in that article, controlling Addressable LEDs is pretty straight forward with a basic knowledge of the I2C protocol. I had planned to cobble together interface to allow RGB LED Strip to be Controller by either a LEGO Mindstorms NXT or EV3 Brick, but my teaching commitments and over projects seemed to have forced the idea onto the back-burner. Thanks to Mindsensor, I have no need to warm up the soldering for the idea as they have come up with a ready assembled interface.

Start Up & Run a Robotics Team

Have you thought about starting a robotics team or do your run one already but want to learn more. Let us show you how. Whether you wish to start a primary or secondary school team, or even an independent team like ourselves, we can guide you through the minefield of what you need to know and do.


The day will cover:

  • What is FLL and FTC ?
  • The Robots (EV3 and Android).
  • Programming/building/design
  • The FLL and FTC Competitions.
  • Costs of running a team, what to buy, ongoing costs.

Places are limited and booking is essential. Please bring along your own lunch and drinks.

Metal Minds Robotics Inc. – Contact 0415866058

LEGO Mindstorms EV3 Ball Chasing Robot using the PixyCAM

PixyCAM Follow the Ball
This article aims to describe how to programme a LEGO Mindstorms EV3 robot that chases things, like a ball in this example. It’s the same robot and program that’s used in the PixyCAM Video below. This robot and program is a good launching point for other projects, and it’s a good introduction to PID control, which is used throughout robotics and engineering in general.

Guide to using the PixyCAM Camera’s EV3-G Blocks

In this article, I attempt to describe the LEGO PixyCAM block, which is used in conjunction with the LEGO Mindstorms EV3 Software. Check out the “Getting Started with the LEGO Mindstorms & the PixyCAM” Article for information on how to install the PixyCAM modules (Blocks) into Mindstorms EV3-G Software.

Getting Started with the LEGO Mindstorms & the PixyCAM

I trust this article will get you up an running quickly with PixyCAM and the LEGO Mindstorms EV3 (NXT). Please make sure you have a LEGO Mindstorms EV3 or NXT brick with a fresh set of batteries. I will endeavor to be as detailed as possible throughout this guide, but it helps if you are somewhat familiar on how to use your LEGO Mindstorms Robotics System.

Connecting the PixyCAM to LEGO Mindstorms using I2C

In order to use the PixyCAM with the LEGO Mindstorms EV3 or NXT kit, you will need an I2C Adapter Cable. You can order a cable through some PixyCAM distributors, including the Robotshop. The PixyCAM for LEGO Mindstorms comes with a special Pixy-to-Mindstorms Cable, and is preloaded with a version of the firmware that speaks with the LEGO protocol by default. If you have Pixy for LEGO, just to the PixyMon Settings section below.

Updating the PixyCAM’s Firmware

When it comes to upgrading your PixyCAM to the latest Firmware is idiot proof. The PixyCam uses a ROM-based algorithm to upload new firmware into flash memory over USB, which makes Pixy “unbrickable” – that is, you will always be able to recover the PixyCAM from an unsuccessful firmware upload or a “bad” version of firmware.

Installing PixyMon on Linux

1. Introduction

The following procedure will walk you through building PixyMon for Linux. This procedure assumes the following:

  • Your system has Linux (Mint-17) installed
  • Pixy firmware has been updated to 1.0.2
  • Your system is connected to the internet

The Mint-17 distribution of Linux can be downloaded here:

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