Fixed Encoder Count Issue with VEX IQ Virtual Worlds – Encoders were not properly adjusting to the 360 count scale and may have caused issues when trying to use multiple “setMotorTarget/moveMotorTarget” commands.

Fixed Virtual Worlds for VEX Cortex platform – crashes when trying to download to Virtual Worlds with VEX Cortex platform are now resolved.

Implemented fix for dual platform users who may experience compiler errors due to “External Motors/Servo Controllers” flag being enabled.

Check that a valid team number has been set for VEX Cortex Controller. The check is made during user program download when the download type has been set to “Competition”. Teams should set their VEX Team Number to assist with debugging at competition while using VEXNet 2.0 (white) radios.

LEGO EV3

Adjust EV3 Standard Model – Motor ports were reversed (left vs right)

Adjusted all EV3 Graphical Sample Program to reflect new “standard model”

Support for draw picture (BMP) file on LCD screen. Does not support general BMP files, but rather LEGO specific picture files.

Fixed an issue where the EV3 “Reset Gyro” command was not properly resetting the Gyro value.

“getBatteryCurrent” command has been fixed.

Improved usage of Casper’s “search for devices” so that USB connected EV3 that are disconnected during a ROBOTC session are better handled.

Crashes to ROBOTC after closing the IDE Editor after communicating with an EV3 have been resolved.

Virtual Worlds

Additional Logic to have “TETRIX” based Virtual Worlds appear if the “External Motor/Servo Controller” flag is toggled. Currently they do not appear under any condition.

Fixed bug hiding “Joystick Control – Basic” for Virtual Worlds users.

Graphical Interface

Prevent ‘text’ and ‘graphical’ menus from becoming undocked from the ROBOTC interface – doing so may cause the main ROBOTC interface to become unresponsive.

Fixed bug where empty parameter values were using the last provided string as opposed to overwriting with “Blank” values – applies for the “MultipleMotor” Graphical commands.

ROBOTC IDE / General

Text-Based Function Library will no longer show commands that have been deemed “deprecated”

Update “Errors” to “Compiler Errors” based on user’s feedback.

Change compiler “error” to “warning” for assignment of a pointer value to an int without use of a cast.

We’re excited to release our latest update, ROBOTC 4.25!! We are calling this our “Release Preview”, because we are still in development for the full version, which will be released by the end of the month. This release is stable and we encourage all our ROBOTC users to try it out. If you run into any major issues, let us know in the forums. This update is for the both the VEX Robotics (CORTEX and IQ) and LEGO MINDSTORMS (NXT and EV3) robotics systems.

Before you can use ROBOTC 4.25, you will need to ensure that your devices are up to date. The instructions to update your hardware will be different depending on what hardware setup you may have…

LEGO NXT Users

Simply update to the latest ROBOTC firmware from inside of ROBOTC.

LEGO EV3 Users

Update your LEGO EV3’s Firmware/Kernel by connecting your EV3 and select “Download EV3 Linux Kernel” from inside of ROBOTC – This process will take about 5 minutes and will allow your EV3 to communicate with both ROBOTC and the EV3 Icon-Based programming language. After updating your EV3’S Linux Kernel, you’ll be able to install the ROBOTC firmware from inside of ROBOTC.

VEX IQ Users

Run the “VEX IQ Firmware Update Utility” and update your VEX IQ Brain to firmware version 1.10. You will also need to update your VEX IQ Wireless Controller by attaching it to your VEX IQ Brain using the tether cable. You will also have to install the latest ROBOTC firmware from inside of ROBOTC.

VEX Cortex Users (with Black VEXnet 1.0 Keys)

You will need to update your VEX Cortex and VEX Game Controllers with version 4.25 from inside of ROBOTC. After updating your master firmware, you will also have to install the latest ROBOTC firmware as well.

VEX Cortex Users (with White VEXnet 2.0 Keys)

The new VEXnet 2.0 keys have a specific “radio firmware” that you will need to upgrade to enable “Download and Debugging” support. You can find the “VEXnet Key 2.0 Firmware Upgrade Utility” utility here.

Link: http://www.vexrobotics.com/wiki/index.php/Software_Downloads

Download the “VEXnet Key 2.0 Firmware Upgrade Utility” and insert your VEXnet 2.0 key to any free USB port on your computer. Follow the instructions on the utility to update each key individually. All VEXnet 2.0 keys must be running the same version in order to function properly.

After updating your VEXnet 2.0 keys, you will need to update your VEX Cortex and VEX Game Controllers with version 4.25 from inside of ROBOTC. After updating your master firmware, you will also have to install the latest ROBOTC firmware as well.

Debugger: Sensor window had some “artifacts” when the number of display rows was larger than the number of active sensors. Fixed so that artifacts are now blank lines.

Compiler: Fixed compiler bug. Conversion of ‘float’ constant expressions to ‘long’ constant value was incorrect. End result of bug was that most likely value assigned was zero.

EV3: Added resources to the firmware image with sounds and images in /home/root/lms2012/resources/

EV3: EV3 firmware from LEGO does not properly handle the use of ‘.’ in the middle of filenames. Replace the ‘.’ with ‘_’.

Compiler: Fixed issue with rand() – Compiler was incorrectly optimizing get/set property opcodes to a one-byte index value with constant parameters. Almost all properties only need one byte with exception of “propertyRandom” which was behaving incorrectly as a result of this bug.

Graphical: Support for “compiler error” display for graphical files including using “graphical block numbers” rather than “text line index” for error display.

Graphical: Tweaked graphical loop block colors.

VEX IQ: Allow the debugger to display information based on the global motor encoder units instead of raw counts for VEX IQ

Cortex: Updated VEX Cortex IME Support to reflect new motor type (393 with Turbo Gears). Also removed some inconsistencies in the software as well.

EV3: When USB connected EV3 is disconnected then ROBOTC would not reconnect to it when reconnected until ROBOTC application was existed and re-entered. The problem was ROBOTC was using a “old” list of “discovered devices”. Now discards list of devices and rescans — when connecting via USB only — and problem is resolved.

EV3: Support for EV3 text drawing to screen.

EV3: Breakpoints now working for EV3.

EV3: Add support for “EV3 Remote Screen” as part of the Debugger.

Compiler: Improved implementation of compiler parse for ‘typedef enum” and “typedef struct”. Implementation is now closer to standard “C” with better handling for “anonymous” typedefs. Does not break any sample programs.

IDE: When a new source file is opened (or a template file) do not initially set the “modified” flag in the file. Only set the modified flag after end user has modified the file.

IDE: Avoid double “Save File” prompt when compiling a file and on the first SAVE prompt you click cancel.

EV3 Kernel: Image of latest build – version 1.06X and all the I2C enhancements.

EV3: IDE “File Management” window for EV3 was often crashing; fixed a buffer read overflow situation which clears this up. Better text error message when there is not enough free flash memory to write a new file to the EV3.

VEX IQ: Updated GUI Text: When a ROBOTC AUTO program had previously ran, and then a user was trying to access a TeleOp program, they would be greeted with a “No Radio Needed…” message box. Updated the text to reflect that if they’re seeing a message they probably need a remote control, because this string is never presented to the user for more than a split second in Auto mode.

IDE: Fixed issue with “Sensors” debugger window not being able to be edited.

They are here to teach, not to steal your job

Education using robots promotes employment, says licensee for top US training system

The widely held belief that robots cost jobs is a fallacy, a robotics expert says.

Terry Sy, executive director of China ROBOTC, the only organization authorized in China to promote what is considered one of the world’s premier robotics education systems, says: “Many parents have asked me about the future of robots. I tell them that if they want their children never to face unemployment, let them do something related to robots.”

ROBOTC was developed at the Robotics Academy at Carnegie Mellon University, the global research university, based in Pittsburgh.

It supports several different robotics platforms and features a variety of functions, including tips and tools for educators and parents on using robotics to teach children about math, science, engineering and physics.

Sy established China ROBOTC in Xi’an, northwestern China, which is considered the center of China’s aerospace, controls and automation market – the perfect location, arguably, to attract the kind of modern young minds who might consider a career in robotics.

“The people who make, apply and repair robots and who teach about robots will always be needed in future.”

Speaking at the recent China International Robot Show in Shanghai, Sy said he felt strongly that Carnegie Mellon’s programs and systems will be a huge benefit to the teaching of robotics in China, and will help narrow the knowledge gap that exists between Chinese and Western students.

The ROBOTC programming language has already been translated into 15 languages and used in more than 40 countries.

In the US alone, more than 300 colleges and 10,000 primary and secondary schools are using its curriculum, Sy says.

ROBOTC is a programming language that uses what is considered an easy-to-use development environment that supports several of the simplest and most commonly used different robotics platforms, including LEGO, VEX PIC, Cortex and Arduino.

It contains firmware that boosts performance and greatly improves program download times, its developers say.

It also features an interactive, run-time debugger, which helps developers find and fix bugs in programs, allowing them to view and edit all of the values that the robot sees – motors, timers, sensors and variables – and quickly pinpoint and troubleshoot problems in programs, greatly reducing the time it takes to develop a program.

“It is easy enough for primary students to learn, but also satisfies the needs of programming experts,” Sy says.

He had the idea of bringing the system to China in 2012, when he was in Beijing attending a national seminar on physical robots, on behalf of the Carnegie Robotics Academy.

At least 20 Chinese universities were at the event, and he found that many wanted to set up robot courses, but did not have qualified teachers, professional textbooks or robot platforms, let alone know how to run courses.

“Chinese students are very good at showing off innovative technologies in competitions, but China doesn’t have a good robot education system,” he says.

He adds the biggest defect in China’s robot education system, however, is that students are not taught how to program and just use existing written codes, which are not enough to develop their own talent further, so he decided to bring ROBOTC to China.

“ROBOTC language can support the world’s biggest robot platforms. It can help children become more innovative, and college students and workers gain more technical skills,” he says.

He chose Xi’an as it was less expensive and crowded than Beijing or Shanghai, but also because the region boasts about 60 universities.

He is now looking for a subsidiary in Shanghai, and more outlets are planned in other cities.

His plan is to increase collaboration with universities and schools by setting up robots in college laboratories.

So far two universities and several primary schools have adopted the system, and the goal is to bring it to 100 colleges, 100 middle schools and 100 primary schools, providing specialist robot training for teachers and technicians.

It is planned to offer training online, so the language can also be brought to people in remote villages or locations that do not have the resources to support robot education.

Sy is confident that despite robots still being a novelty to many in China, their use is set to grow fast.

In 2011, US President Barack Obama decided to give greater priority to the use of robotics in teaching the vital fields of science, technology, engineering and mathematics, and Sy believes it is now important for China to move in that direction.

“That is why we want to bring this kind of robot education to as many parts of China as we can, to make it part of the Chinese education system. This training will definitely help people become more logical and confident.”

Last week I attended another teacher training at CMU’s Robotics Academy. My goals this year was to be more comfortable working with ROBOTC, which is the programming language that my FTC robotics team uses. Also, I am teaching/mentoring/moderating our robotics class in the fall. As a middle school with a programming class, I thought my students would be better served by teaching them robotC but also I thought it would be great to have them also prepped for the team if they are interested in becoming part of the team.

Above is a collage showing the ROBOTC graphical interface, some “regular” ROBOTC, and a Tetrix bot.

Again, it was a really great workshop and I learned a lot! It is crazy. I have been teaching Scratch and this summer I introduced kids to Python and some basic programming in Arduino and I was struggling with explaining variables and functions. I got the basics but I had a hard time explaining it because I do not have a Comp Sci background but this time, I totally understood how variables and functions operating within a programming language. Tim Friez, our instructor, was really amazing and his style of teaching was perfect. I think, that his style is what a lot of teachers are starting to go for – in the parlance of our field – student-driven/centered.

We also had a teacher, who works on curriculum development at the center, come in and give us tips and hints about teaching robotics. It was practical advice and just giving us tips on what to be aware of. Also, in order to have a class, there is a fair amount of start-up costs.

expansion kits if you have advanced students (which you will probably have)

I also met some really amazing people and it was great hearing what their challenges are and how they dealt with them. Most of us were just “regular teachers” which also made the prospect of having a robotics class less daunting.

I am again super excited about it but I also realize that I need to recharge. I am taking the next few weeks to do that before orientation week. I worked all of June and July. I do not want to go back feeling like I did not have this time to process all that I did this summer and last year.

If anyone is thinking about teaching robotics, I would highly highly recommend the CMU Robotics Academy. They offer online and campus workshops in the summer. They are going to have webinar soon about EV3 and ROBOTC.

The ROBOTC and Robot Virtual World teams are thrilled to announce the availability of our newest virtual world: VEX IQ Highrise!Like previous simulations of the VEX competitions, this virtual world includes a fully programmable robot, the correctly scaled field, game objects, and score and timer tracking. It’s absolutely perfect for teams who want to do strategic planning and learn how to program.

Just like the official 2014-2015 VEX IQ competition, the object of the game is to attain the highest possible score by Scoring Cubes in the Scoring Zone and by building Highrises of Cubes of the same color on the Highrise Bases. Each Cube Scored in the Scoring Zone is worth a point value equal to the Highrise Height of the same color as the Cube. That is, if a team builds a Highrise of 3 red Scoring Cubes on the Highrise Base, a red cube in the Scoring Zone is worth 3 points.

The China ROBOTC team sent us some great photos from the China International Robotic Show in Shanghai, which they’ll be at from July 9-11. We will update the photos here and on our Facebook page as we get them from the weekend!

FAQ

How do I join and get into the class?
Sign in or sign up for a new account at CS2N.org. Then visit http://cs2n.org/summer-of-learning and click on the VEX IQ robot. You’ll be taken to a new page where you will click “View” under “Summer of Learning 2014 – VEX IQ – Intro.” From there you will be in the official Summer of Learning course!

How much does this course and/or software cost?
Nothing at all! It is free until September 1, 2014.

What do I need to download?
ROBOTC and the VEX IQ Challenge Pack. You need to download both items. The License ID and Password is located in the CS2N Moodle Course. Use these to activate the license for the entire summer (through September 1st). Computer Minimum Requirements.

Where can I find the link for the live classes?
The link is at the top of the section for the topic of that class. For example, if the topic for the live class is turning, the link will be at the top of the basic movement section. This is also where you will find the recording after the live class has ended.

What is the class schedule?
The live class schedule is listed below, but remember that you can work throughout the summer at your own pace. All classes are recorded. Just keep in mind that if you work ahead, some items of the curriculum will not be released until later this summer.

Will I be able to use the ROBOTC Graphical with EV3 and/or NXT? And, will there be a RSOL class for that?
ROBOTC for LEGO MINDSTORMS is still in development, but it will be available later this summer. Once it is ready, there will be a Robotics Summer of Learning course specifically for it.

Live Webinar Course Schedule

June 16: Introduction to Software, Setup, Forums and Procedures used in this course

Our Robotics Summer of Learning (RSOL) course opens this Sunday, June 15 with our first live webinar course starting on Monday, June 16! The RSOL gives students the opportunity to learn how to program robots using a free copy ROBOTC 4.0(including the new Graphical Natural Language) for Robot Virtual Worldsprogramming software. If you’ve always thought that ROBOTC was too difficult, you should try out the new Graphical Natural Language, which is part of ROBOTC 4.0!

All courses will be held at 1:00 PM Eastern Standard Time with a live instructor. A link will be available in the CS2N Moodle course for each session. All sessions are recorded so that you can take the course at your own pace. These dates are subject to change.