EV3 Basic (Microsoft Small Basic with the EV3 extension) lets you control your Lego EV3 robot using a programming language that is superior to the standard Lego software in two main ways: it has many functions that are not available in the standard software and it is text-based, like the languages used by programming professionals.
This is a first course in EV3 Basic, designed simply to get you started with this language so that you can then begin writing your own programs, going beyond what is possible with the standard Lego EV3 software. Installation is easy and free, and is explained in one of the lectures. Installing EV3 Basic and running your first program should take less than an hour and I estimate that it might take 5-10 hours to work through the entire course, but as you try out the programs that appear in this course you will no doubt want to try modifying them (it's Lego after all!) so it's hard to make an accurate estimate.
Most sections have a video, a PDF lecture and quiz. Enjoy the course!
This video explains what makes EV3 Basic different to (and in some ways superior to) the standard Lego EV3 software, as well as introducing the companion program, EV3 Explorer.
Ten multiple choice questions on the fundamental ideas behind EV3 Basic, the easiest way to program the EV3 textually.
We show you how to download and install both Microsoft Small Basic and the EV3 extension, and how to write and run your first program. It should all take much less than an hour!
EV3 Basic is compatible with all the EV3 and NXT motors. Nine functions are available in EV3 Basic to control motors, but only four are needed by beginners.
Ten multiple choice questions about how to control motors using EV3 Basic. For all the questions, assume that the EV3 is configured to be a standard robot vehicle with two driven wheels attached to motor ports B and C. Assume also that we always want to apply the brake at the end of the motion.
EV3 Basic is compatible with all the standard EV3 and NXT sensors. This lecture explains how how to set the mode of the sensors and how to obtain values from the sensors using just three functions.
Ten multiple choice questions to test your knowledge of how to get values from the standard EV3 and NXT sensors. For all the questions on sensors, assume that the sensor port number mentioned on the code correctly matches the port number that the sensor is actually attached to. Assume also that a Sensor.SetMode() command has already been run to put the sensor in the correct mode (usually mode 0).
This video shows how to draw shapes on or send text and images to the EV3 brick's LCD screen, as well as control the brick's LED light and speaker. It also shows how to detect presses of the brick's buttons.
Ten multiple choice questions to test your knowledge of how to work with the the brick's LCD screen, LED light, buttons and speaker in your EV3 Basic programs.
EV3 Basic programs can be run directly from within Small Basic, in which case the program is not downloaded to the brick. It is often preferable to download the program to the brick (like the standard Lego EV3 software does) and in this case it is necessary to use the companion program, EV3 Explorer. EV3 Explorer also converts (compiles) the Small Basic program into the form (called an RBF file) that the brick requires. Furthermore, EV3 Explorer allows you to download sound and image files to the brick for use with your EV3 Basic programs.
Ten multiple choice questions about EV3 Explorer, the companion program to EV3 Basic.
This lecture explains how to set up and use a wireless connection (Bluetooth or WiFi). For maximum convenience and reliability, use a USB cable connection whenever possible. If you need to use wireless then prefer Bluetooth to WiFi unless you need the extra range provided by WiFi. When using either form of wireless communication, it is strongly recommended to use brick mode rather than PC mode if possible (some programs use features of Small Basic that are not compatible with brick mode).
Seven multiple choice questions on how to use Bluetooth and WiFi with EV3 Basic
This lecture shows you how EV3 Basic can be used to solve some of the same challenges that are set in the education version of the standard EV3 software. This doesn't really do justice to EV3 Basic, since EV3 Basic is capable of making programs that it would be impossible to make with the standard software, so this section also introduces, in the form of a video lecture, a 'WriterBot' project that would be impossible to make with the standard software. Additional EV3 Basic solutions to the official Lego 'Robot Educator' challenges and a fuller explanation of the WriterBot project are available on my site EV3Basic.com from which this course was derived.
This video lecture showcases an EV3 Basic project, WriterBot, that would be impossible to make with the standard software (if you think that it IS possible, then I challenge you do so!). A fuller explanation of the WriterBot project is available on my site EV3Basic.com from which this course was derived.
This is the official EV3 Basic handbook or manual. If contains a description of every function that is available in the EV3 extension as well as descriptions of the 'Text' and 'Math' functions that are part of Small Basic but which are fully compatible with EV3 Basic, even in brick mode.
I'm British, married to a French lady and living in the south of France. I have a degree in physics from Imperial College of Science and Technology, London (currently ranked second in the world!). I'm a teacher of physics and computer science - I've taught in a number of top international schools including:
* French American International School, San Francisco
* Hong Kong International School
* German-Swiss International School, Hong Kong
* British School of Brussels
* International School of Brussels
* European School 3, Brussels
* Centre International de Valbonne, France
* International School of Sophia Antipolis, France
In 2013 I began including robotics in my computer science course. The robotics classes were based on the Lego EV3 robot and went very well, but I was uncomfortable about teaching students how to program the EV3 using such a quirky (icon-based) interface. In 2015 I became aware of an easy way to program the EV3 textually, called EV3 Basic. I was so inspired by the power and simplicity of this little-known language that I met the developer and offered to do all I could do to help EV3 Basic to get the recognition it deserves. He approved... and here is the result!