An interesting question that has arise is whether we can use the LEGO Mindstorms EV3-G Software to program the NXT brick. In this episode we will go through the blocks from the EV3-G Software and see which works with the NXT Hardware and which does not.
- 11 Nov 2013
In this episode I'd like to show you how to run the old version of the NXT Mindstorms series using the new software of Evolution 3. It's possible and it's doable but it poses some challenges.
Our first task is to try to connect the new EV3 version of the software to the NXT Mindstorms version of the robot. I'll try to search for the connection using Bluetooth. The Bluetooth of the robot is turned on.
Probably, the first problem is that the new version cannot establish a Bluetooth connection with the NXT hardware. At least for now, it's impossible for me to find the NXT hardware using the EV3 version of the software. So, we should use a cable. I'll take a cable; plug it in;
and we see this warning message: "Please, update brick's firmware." Currently, the version of our NXT firmware is 1.28 and, as we saw in the warning message, we should update this firmware. Regrettably, it's not possible to update the brick's firmware using the EV3 version. You can look for it in different places but at the end of the day we should use the old NXT G version. Here it is. I can update the NXT firmware. I will download this NXT firmware version 1.31. Brick. OK. And it's done. The firmware is updated. Let's again try running the Evolution 3 version of the software. We create a "New Project". "Program"
They take a while to load. And we see that our new 911BNXT is connected and has a firmware of 1.31. And it's connected by USB. Let's make a couple of tests. For example, let's try to move one of the motors: Motor B for number of rotations with power of 100. I think this would work pretty much straightforwardly. Then we can try to steer it to see if there is any difference in steering. For example, steering with the value of 100 or, let say, 75. Is there anything else? Yes, we can try to move tank block. We can move one of the motors with some power and the other with less power, again for a number of rotations. Let's download it and see if there is any difference in programming when using the EV3 and NXT version. When I now try to start the brick, you see that the default program that has just been downloaded from the EV3 version is called "Program". And if I try to run it, "Program", "Run", you can see that the robot behaves in basically the same way. So, it's possible to program the motors using EV3 when the hardware is NXT. Let's now write a more advanced program and try the flow control from EV3 to NXT. Let's write the following program. I'll delete these motors. I'd like to start motor B with the power of 10 and then add a loop. We have a loop and we'd like to loop until (so we have to add a switch) the motor rotations of motor B are less than 1. The moment when motor B reaches 1 rotation we will use this new loop interrupt block.
We will interrupt this loop - this is something new for EV3 and we'll see whether it works with the old NXT hardware. Let's try another block at the end of the program - the "stop program block". So, we are moving forward with motor B until it reaches 1 rotation; then we break the loop and then we use the stop. OK. Let's see how it works.
As you can see, the robot is moving motor B until it reaches 1 rotation and then it stops.
Another thing we can try, for example, is to use the old light sensors from the NXT hardware with the new EV3 software. If you go to the sensors tab, you will see that you have brick buttons, color sensors, gyro sensors and other, but you don't have any light sensors. Currently, my robot has two light sensors from the NXT hardware connected on port 1 and port 3. If I try to select port 1, since there're no light sensors, we can try the color sensor. We can select "reflected light". We will then actually see there is no value shown. It stays 1. This means it is not possible to use the old light sensors with the new EV3 software. Other things that are not possible to use are different blocks and if you, for example, use this medium motor, you will notice a special icon called NXT which means the EV3 software detects there is NXT hardware connected and it tells you that you can't use this block with the NXT hardware. It's impossible. Other such blocks are, for example, (let me find them) the gyro sensor. The energy meter is possible to use. But the arrays are not possible. You cannot use the arrays with the NXT hardware. Are there any other? I don't think so. That's all basically. Oh, yes. The invert motor. There are five or a little bit more blocks that cannot be used in the EV3 software to control the NXT hardware. But that's all. In one of the next videos we'll probably try to use the color sensor of the old NXT hardware with the new EV3 software. But until then, if you have any other problems with running the NXT or EV3, or with preparing for the FLL, do not hesitate to contact us and we can make a video about your problem.