EdPy programming language

EdPy is a highly versatile text-based programming language for the Edison robot. EdPy is based on Python, a popular computer programming language renowned for being easy-to-learn with high readability. Programmers use Python to develop everything from the latest apps to business software. Facebook, YouTube and Pinterest are just some of the many applications that use Python! EdPy makes text-based programming fun by letting students see their code come to life in their Edison robot. With EdPy, students are learning the core of a real programming language and are able to take their exploration of robotics and coding to a more advanced level.

EdPy programming environment

The online EdPy programming environment has a range of features designed to help students learn texted-based programming. These features include:

  • Line help – provides a plain-English explanation of valid lines of code
  • Autocomplete – automatically offers matched option suggestions as a user starts typing in code
  • Popup help – help box assistance providing a description of the code which appears as you type
  • Help text and examples – inbuilt help text and examples native inside the programming space

You can access EdPy online at


These free, downloadable resources can help you get the most out of EdPy.

EdPy lessons

Lesson plans – student worksheets

The EdPy lesson plans are designed to introduce programming to students using Edison and EdPy in a structured, progressive way. The student worksheet set, containing 38 worksheets with 9 activity sheets, is organised into 10 lessons. The student worksheets enable independent learning and are perfect for students in year level 7 and above (13+ years old).

Download the EdPy student worksheet set

Teacher’s guide to EdPy

This guide offers teachers and instructors overviews, activity extensions and other supporting information for the ten EdPy lessons. The guide is structured as a complementary supplement to the student worksheet set and includes an overview of each lesson’s key learning outcomes, supporting information for each student worksheet, a student progress tracking chart and the answer key to the student worksheets. 

Download the EdPy teacher’s guide

EdPy teachers guide

Curriculum linking guide

This resource serves as a guide as to how the EdPy lesson plans to link to standards and requirements in the Australian Curriculum (v8.3).

Download the EdPy Australian curriculum linking guide


Help Text

A downloadable version of all of the help text contained in the ‘Documentation’ section of the EdPy online app. Great for use as an offline reference guide or syntax manual for EdPy.

Download the EdPy app documentation guide 

EdPy programming projects with EdCreate

Give your students the opportunities to program solutions to real-world robotic challenges using EdPy and EdCreate, the Edison robot creator’s kit. Multiple programming challenges perfect for EdPy using the EdCreate EdBuilds are available in the EdCreate teaching guideOr unlock your student’s creativity and EdBlocks programming prowess with the EdCreate EdChallenges!

EdCreate build EdPrinter


Using EdPy
How do I access EdPy?
EdPy is available online at:

How do I download a program to Edison?
To download a program to Edison, first connect Edison to your computer or tablet via the EdComm cable. Make sure that the volume on your device is at maximum and all sound enhancements are disabled. Press the round button on Edison one time. Then click on the ‘program Edison’ button in the top-right corner of the app. A new window will pop-up. Follow the instructions on the window and click ‘program Edison’ on the new window. The program will then download into Edison. Remember to listen for the success sound before unplugging the EdComm cable to ensure the program fully downloads.

How do I run an EdPy program on Edison?
Once you have successfully downloaded a program to Edison, disconnect the EdComm cable from Edison. To run the program on Edison, press the play (triangle) button on Edison one time. This will immediately start your program.

Where do I find all the functions I can use?
EdPy has an inbuilt help menu of functions on the right-hand side of the programming environment that lists all the functions available in EdPy. EdPy will also autocomplete a function name when you begin to type in the main programming environment.

How do I know what a function does?
EdPy has an inbuilt menu of functions on the right-hand side of the programming environment. There is also a ‘search’ feature built in at the top of the function menu. Use this to search for the function you are interested in, then click on that function to display the help documentation for it. Each function’s documentation includes information on accepted inputs and example code.

What are the words that get automatically filled into some functions?
The autofill feature in EdPy will automatically generate placeholder labels for all of the inputs of a function. These labels are designed to help the user understand what each input is for. These labels need to be overwritten with actual inputs before a program can be downloaded to Edison.

How do I save my EdPy program?
To save your programs in EdPy, you need to have an account and be logged in. You can create an account by clicking on the menu button in the upper left-hand corner of the app. Select the ‘Log in’ option, then the ‘Create Account’ option. Follow the steps to register your free account.
Once you are logged in as a registered user, you can save your program by clicking on the menu button in the upper left-hand corner of the app and selecting ‘Save As’ from the menu.

How do I create my own functions?
Functions can be created in EdPy in much the same way they are created in Python, using ‘def’ to define a function. You can read more about how to use ‘def’ at the Python tutorial site.

How do I use interrupts?
The function ‘Ed.RegisterEventHandler’ can be used to turn your defined functions into an interrupt.

How do I import other Python libraries?
Unfortunately, you cannot import other Python libraries. While EdPy is a Python-like language, EdPy needs to be compiled to be downloaded to Edison. This extra compile step makes EdPy incompatible with standard Python libraries.
About EdPy
What kind of language is EdPy?
EdPy is a python-like text based programming language. As such, EdPy is an object-oriented general-purpose programming language. Unlike Python, EdPy is a compiled language as EdPy needs to be compiled to be downloaded to the Edison robot. Despite this difference EdPy, has been designed to be as close to Python as possible, making it a great starting point for text based programming.

What age user is EdPy for?
The power and relative simplicity of Python coupled with searchable help and line help within EdPy make it the perfect language to introduce text based programming. We recommend students have some prior exposure to programming before beginning with EdPy. EdPy has been designed for students in school years 7-10 with some prior coding exposure.

What do the different functions do?
EdPy has an inbuilt menu of functions on the right-hand side of the programming environment. There is also a ‘search’ feature built in at the top of the function menu. Use this to search for the function you are interested in, then click on that function to display the help documentation for it. Each function’s documentation includes information on accepted inputs and example code.

Which browsers are compatible with EdPy?
EdPy is compatible with Chrome, Safari, Microsoft Edge and Firefox.

Is there an EdPy iOS/Android app?
There are not currently dedicated mobile apps for EdPy, however you can access EdPy through the browser on a tablet. As text-based programming is quite fiddly on tablet devices, we recommend programming using EdPy through a computer.
Troubleshooting in EdPy
Why isn’t my program downloading?
Depending on the type of computing device you have, there are a few different things that can cause problems downloading programs with EdPy. Make sure your programming device is set up to work with EdPy. Follow the step-by-step guide on setting up your device for EdPy beginning on page 11 of the Getting started guide.

You can also find additional troubleshooting help in our online troubleshooting guide.

If you are using a programming device which has a low output volume, including some Chromebooks and touch-screen laptops, and your programs are not downloading successfully, go to and try downloading and running a test program there. Please note, you may need to disable sound enhancements on some Windows machines.

Also, please note that when many users in a single location, like in a classroom, are downloading programs at the same time, you may experience slower internet speeds. This can cause the program to take longer to generate the ‘program Edison’ pop-up box and for the program to download to Edison. With a very slow connection, you may need to try again. Press the stop (square) button on Edison, then press the record (round) button one time. Restart the download by clicking on the ‘program Edison’ button in the top-right corner of the app.

How do I use EdPy with Edison V1?
To program an Edison V1 robot using EdPy, you will first need to update the robot’s firmware. Please follow the steps on our firmware update page to make sure your Edison is updated.

EdPy Tutorial Video

Designed for those new to the EdPy programming language, this tutorial video introduces the EdPy programming environment before moving on to more complex coding tools such as variables, tune strings and objects and classes.

EdPy Unit 1 Tutorial – The EdPy programming environment 
EdPy Unit 2 Tutorial – The basics of text-based programming
EdPy Unit 3 Tutorial – Loops
EdPy Unit 4 Tutorial – Variables
EdPy Unit 5 Tutorial – Tune strings and lists
EdPy Unit 6 Tutorial – Reading sensor values
EdPy Unit 7 Tutorial – If and Else
EdPy Unit 8 Tutorial – Functions 
EdPy Unit 9 Tutorial – Events and interrupts 
EdPy Unit 10 Tutorial – Objects and classes


Additional resources

Translation kits, translated versions and more.



Licenced under Creative Commons – use, adapt and share

We want to make robotics and computer science education available to everyone, which is why these teaching resources have been released under a Creative Commons licence. You are free to use these resources as they are, translate them, share them or use them as the base to develop your own customised lessons.

Creative Commons License
The EdPy Lesson Plans Set by Brenton O’Brien, Kat Kennewell and Dr Sarah Boyd is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.
Based on a work at

You are free to:

Share — copy and redistribute the material in any medium or format
Adapt — remix, transform, and build upon the material for any purpose, even commercially.

Attribution — You must give appropriate credit, provide a link to the license, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use.

ShareAlike — If you remix, transform, or build upon the material, you must distribute your contributions under the same license as the original.


EdPy resources translation kit

Looking to translate the EdPy resources into another language? Download the translation kit to get the editable files you will need.

Download Bulgarian EdPy student lessons (Bulgarian by Goran Goranov)

  • Keep up with Edison

    Sign up for our newsletter to get all things Edison delivered straight to your inbox.

  • This field is for validation purposes and should be left unchanged.

Heads up

The Australian Federal Parliament has passed a law that extends goods and services tax (GST) to low value imports of physical goods imported by consumers from 1 July 2018.

This means that all customers purchasing Edison robots and accessories with an Australian shipping address must now pay GST. The GST will be automatically added to your purchase and show as a line item on your invoice.

We've detected that you are in Australia, so we wanted to let you know that we have changed your settings to view our Australian site, which displays GST inclusive pricing.

You can change back to the GLOBAL SITE at any time using the link in the top left of the page.

OK got it!    Take me to the GLOBAL SITE instead

Pin It on Pinterest

Share This