Cart / Quote

VEXcode VR

Learn Computer Science at home without a robot.

Read the Get Started Guide here >
Try it now at >

Easy to get started

VEXcode VR lets you code a virtual robot using a block based coding environment powered by Scratch Blocks. VEXcode VR is based on VEXcode, the same programming environment used for VEX 123, GO, IQ and V5 robots. We all know that robots make Computer Science (CS) come to life with real world applications. Now STEM learning can continue while at home for students, teachers and mentors with no access to their VEX robots.

Robots make computer science more fun

VEXcode VR is an easy to use platform that allows you to code a virtual robot using either Block-based coding environment powered by Scratch Blocks, or a custom developed Text-based Python interface. VEXcode VR is based on VEXcode, the same programming environment used for VEX 123, GO, IQ and V5 robots. We all know that robots make Computer Science (CS) come to life with real world applications. Now STEM learning can continue while at home for students, teachers and mentors with no access to their VEX robots.

Three Ways to Code in VEXcode VR

  1. Blocks: Block-based coding powered by Scratch Blocks

  2. Blocks + Text: See Python code generated in real time while coding in Blocks with the Code Viewer

  3. Text: Text-based coding with Python directly in your browser

Web Based

No software installations required. VEXcode VR works in all major desktop and tablet browsers.

Virtual Robots

These robots are pre-built. Use drivetrains to navigate. Use sensors to help solve mazes. Use pen features on the art canvas to code a creative drawing. Use the new electromagnet to interact with game objects in challenges.

Virtual Playgrounds

Choose from different virtual 3D playgrounds to take advantage of the virtual robot’s features. Control your point of view as the robot runs your code. Playgrounds include a grid world, an art canvas, and a walled maze. Many more will be added.

Challenges & Activities

Our team of education experts created easy to follow activities that can be implemented easily. Activities are in Google Docs, so teachers can add to or edit the activities.

Live Dashboard

Visualize data on the playgrounds dashboard.

Try it now at >

VEXcode VR Changelog

Changes for 8/20:

  • Added a Competition Timer to each playground
  • Added a "Stop Project" command to the toolbox
  • Change the start-up behavior so the "Getting Started" tutorial video is opened by default at the beginning of each visit
  • Added feature to detect and alert the user of "break" blocks in invalid locations
  • Added a "What's New" window to VEXcode VR on first visit since a major update is pushed. The "What's New" window can also be accessed from the 'File' menu.
  • Added new UI Languages: Latviešu, 日本語, 繁體中文
  • Added new "Learn" toolbar icon to launch homepage
  • Resolved an issue where using a "print" command before a "stop project" block would cause the "print" command to not execute properly.
  • Resolved an issue with using the "Share" feature in Python when the project name contained non-ASCII characters

Changes for 5/28:

    • Initial VR Python release
    • Resolved issue with the remainder (modulo) operator in VR Blocks
    • Updated the Castle Crasher playgrounds to have wider red borders to help prevent robots from falling off the edge while using the down eye sensor
    • Resolved issue with wall phasing in the Dynamic Maze playground
    • Improved information in the VR Blocks help docs
    • Resolved issue with robot drifting to the side after picking up a disk while moving
    • Added beta support for German, Lithuanian, Finnish, and Turkish languages
    • Added 7 new tutorial videos
      • Loading on ChromeOS
      • Saving on ChromeOS
      • Moving and removing blocks
      • Saving on macOS
      • Loading on macOS
      • Saving on Windows
      • Storing data

Changes for 4/29:

    • Resolved an issue where timer did not pause in-between steps when stepping through a project
    • Resolved an issue with block parameter inputs showing up blank on generated PDF documents from the 'Share' feature
    • Added help data for the 'set print color' block
    • Updated help data for printing blocks, eye sensing blocks, and 'distance found an object' block
    • Resolved an issue with default value variables disappearing from the monitor console when running a program
    • Added additional reserved words to the VEXcode prohibited variable names list
    • Improved Russian language translations
    • Playgrounds: Resolved an issue with the Playground border being cut off in top view for Castle Crasher Playgrounds
    • Playgrounds: Resolved an issue with the Playground view not appearing fully when toggling the dashboard in chase view

Changes for 4/24:

    • Added the "Monitor" feature to VEXcode VR:
      • Sensor reporter block monitoring
      • Global variable monitoring
      • Displaying text and values to the Print Console
      • Saving Print Console output to a text file
    • Implemented VEXcode VR loading performance improvements
    • Implemented "Feedback" system logging and reporting for errors related to Playgrounds loading
    • Implemented automatic Playground selection in example projects
    • Increased List and 2D List maximum size to 20 for each dimension
    • Added beta support for Russian language
    • Improved 'turn to heading' behavior on the VR Robot to always turn the shortest distance
    • Adjusted behavior on Disk Maze and Wall Maze so the starting locations no longer report the color green
    • Added new tutorial videos:
      • Driving Forward and Backwards
      • Turning
      • Using Examples
      • Using Help
      • Using Loops
      • My Blocks
      • Using Activities and Resources
    • Added new Playgrounds:
      • Dynamic Wall Maze: Randomized wall maze layouts on each reset
      • Dynamic Castle Crasher: Randomized castle layouts on each reset
      • Disk Mover: Simpler electromagnet and disk activities

Changes for 4/16:

    • Playground selection now saved with Project files
    • Playgrounds: Fixed issues with Bumper not detecting walls at high speeds
    • Playgrounds: Fixed issues with Bumper values not updating between resets
    • Playgrounds: Increased red “danger area” in Castle Crasher

Changes for 4/14:

    • Added an unsaved work notification when a user navigates away from the page with unsaved changes
    • Resolved an issue with the language switching dropdown menu in Safari
    • Added Sensing subcategories labels to the toolbox to help organize toolbox reporter blocks
    • Added a "not currently supported" dialog to Chrome Browser on iOS/iPadOS due to file saving issues
    • Resolved an issue where blocks may disappear when adding or duplicating blocks to an existing project
    • Fixed an issue where Help documentation was incorrect for "Motor is done" blocks
    • Playgrounds: Resolved an issue where Disks may not be detected momentarily when the drivetrain comes to a stop

Changes for 4/10:

    • Adjusted blinking speed to increase visibility with "Step" and highlight execution features
    • Adjusted behavior where "When Started" will blink when highlight execution of a project
    • Adjusted behavior for the "Step" feature to automatically step through the "When Started" block and save the need for an additional "Step" action
    • Resolved an issue where a project would always "Stop" after completing the last command in the "When Started" stack
    • Updated the icon in the toolbar for the "Playground" button
    • Playgrounds: Corrected the hazard border on the "Castle Crasher" Playground to be red instead of yellow

Changes for 4/9

    • Added support for Electromagnet device
    • Added support for Bumper Sensors
    • Added feature to "Step" through code one block at a time
    • Added code highlight execution feature to indicate program flow by highlighting blocks
      • Blocks will be highlighted to indicate they're next to run when the step button is pressed
      • Blocking commands (such as Wait, Drive for Distance, etc.) will blink until completed
    • Added feature to automatically select the Project Name text box when renaming a Project
    • Added "Activities" button to top menu bar next to tutorials to provide quick access to VEXcode VR activity
    • Resolved an issue with "My Blocks" not appearing correctly in the toolbox after loading a project
    • Resolved an issue with random text appearing while dragging blocks in the workspace
    • Playgrounds: Added two Bumper Sensors to the VR Robot model
    • Playgrounds: Added Bumper Sensor values to the Dashboard
    • Playgrounds: Added new "Disk Transport" Playground, best for trying out the Electromagnet
    • Playgrounds: Added new "Castle Crasher" Playground, fun level for knocking over and pushing objects (just avoid falling off the Playground!)

Changes for 4/8

    • Added educator resources to
      • A pacing guide for all the activities with CS standards addressed
      • An email home that teachers can send parents that talks about VEXcode VR
      • Answers to all the levels in each activities

Changes for 4/7

    • Changed valid range of drive/turn velocity blocks to -100 to 100
    • Fixed issue where share feature was not working in Safari (iPadOS/macOS)
    • Fixed issue where the bottom of the help content was cut of at the bottom on Android tablets
    • Playgrounds: Fixed issue with low UI text quality and text getting cut off on some screens

Changes for 4/6

    • Fixed issue with unwanted text seletion in Safari
    • Added privacy policy link to about dialog
    • Playgrounds: Added start/stop button in Playground window
    • Playgrounds: Default to top view camera
    • Playgrounds: Fix for Pen feature not drawing properly in Wall Maze
    • Playgrounds: Fix for showing the full table in "Top View" when Dashboard is open

Changes for 4/3

    • Fix issue with warning on Chrome on iOS
    • Added My Blocks feature
    • Added "Brain" timer blocks
    • Added loading screens to Playground window (should prevent "black screen" issues)

Changes for 4/2:

  • Initial Release