Hot answers tagged

6

The .ev3 file is actually just a zip file. You can use any zip utility to browse the contents or unzip it. It will look something like this: ├── Activity.x3a ├── ActivityAssets.laz ├── Program.ev3p ├── Project.lvprojx ├── ___CopyrightYear └── ___ProjectTitle The ___* files are just plain text files, ActivityAssets.laz is another zip file and the rest are ...


5

Yes, it is possible to pass the port number as a parameter to a sensor or motor block via data wire. It's just that it's manually selected by default. To change this, go to the port of the sensor or motor block, and select the top-most option which has the plug icon on it: It will then create a data port for which motor port you want to use: The same ...


3

Sadly that's a limitation of Windows RT - there's no way you can install the EV3 software on there. Windows RT can only run apps from the Windows Store (and some specially compiled apps that MS supply such as Office RT - however I don't think the typical user can install a correctly compiled non-Store app on the Surface - as a developer you can side load ...


3

Unfortunately, there is no way to add a parameter to an existing MyBlock in both the NXT and EV3 series. You will have to create a new one with more input parameters.


2

No. Unfortunately there are no shortcuts. EV3-G can not open programs written in NXT-G. To quote Lego: 9.5 I have a LEGO MINDSTORMS NXT2.0 (8547) set; will there be an upgrade/conversion kit from NXT to LEGO MINDSTORMS EV3 (31313)? No, but LEGO MINDSTORMS EV3 offers backward compatibility to NXT. You can therefore use your NXT Intelligent Brick ...


2

No, EV3 MyBlocks cannot be recursive. If a MyBlock contains a copy of itself, then the following error will be produced upon compiling: For some reason, LEGO's programming software has become progressively less immediate about notifying you that this cannot be done. In EV3-G, it waits until compile to let you know that you can't do this. In NXT-G (the ...


2

Go to the directory (for home edition) c:\Program Files (x86)\LEGO Software\LEGO MINDSTORMS EV3 Home Edition\Resources\MyBlocks\images\ (for edu version) c:\Program Files (x86)\LEGO Software\LEGO MINDSTORMS Edu EV3\Resources\MyBlocks\images\ And create a group of 3 icons for each new icon: PolyGroup_NNN_NAME_Diagram.png [size 34x34] - visible in the ...


2

You can do this with parallel programs and a logic variable. You will need 3 loops, one for each sensor and one for the motor. In the sensor loops, wait for the touch sensor to be pressed and then set a logic variable to true. In the motor loop, have a switch block that tests the logic variable. If it is true, reverse and turn around and then set the logic ...


2

Updating to iOS to 10.10.5 seems to have solved the problem for me. Hopefully this helps someone else out there.


2

This is EV3-G code for a PID based on PID Controller for Lego Mindstorms Robots by J Sluka. It uses the steering parameter of the Move block instead of power levels of the Motor block. The interesting parts are setting the Kp, Ki, and Kd values.


2

There are two options that I can think of. Do the "hardware" fix before every run of the robot to reboot the sensor along with the "software" fix to zero it. Don't use the Angle reading at all. To calibrate the sensor, sample the rate (d/s) 10 times or so and take the average to get the "at rest" rate offset and store it in a variable. Subtract this ...


2

You have the motor power set to 1 and you are waiting for 1 full rotation. If the motor moves at all, it will take a long time to complete one rotation. Most of the loop is spent waiting for the rotation to complete (or if the motor is not moving at all, then the loop never actually loops). Try using a higher power - at least 10. Also, use less than one ...


1

The Gyro is a tricky sensor to use, but at yesterday's FLL competition in Elk River, at least 5 teams had worked out the issues to their satisfaction. I'm revealing their answers here. It is unfair to those teams, since their research does represent a significant advantage over other teams. That said, none of their solutions were complete. Each team had ...


1

Yeah... It happened to me this very day... SOLUTION: One of the following always does it (listed in descending order of effectiveness): Relaunch the EV3 Software (Be sure to save your work!) Use a Download Cable instead of Bluetooth The EV3 Software messes up on Windows 10; try using an older PC. Restart the brick. Restart the computer. Try turning ...


1

Yes you can do this in the standard EV3 software. Make a block that waits until the Light Sensor goes "dark". Connect this to a Timer block, and start a new timer (reset Mode). Connect that block to a new Wait block, which waits until the Light Sensor goes "light" again. Then use another Timer block, this time in Measure Mode, to get the duration since the ...


1

Here is another pattern that watches more than one sensor. Instead of parallel code blocks setting a variable value, this code combines sensor outputs to feed a logic block which feeds a switch. No variable is used. Note that only the touched side of the switch statement is used. Not an important difference, I just find it easier to follow. The other ...


1

Some suggestions from the LEGO MINDSTORMS EV3 Facebook group: Too many named loops in your code Too many blocks in a loop Try to avoid using too many loop interrupts A problem with the copy/paste - delete the pasted portion of the program and make it from scratch


1

The error is caused by the underlying MS Silverlight runtime. As stated in this stack overflow answer, the error may be caused if the caller does not have the required permission. path is a directory. path specified a read-only file. Possible ways to find a solution: Open the Console application and see if the error shows details about which path it ...


1

A temporary fix I found that works: using the provided "gray blobs", there is one named "PBRStringAtIndex" (or something like that) which will indeed compile (EV3 only). This does not address the similar "write at index" issue, and the output is a "byte" (presumably ASCII), not text. (I will update this answer as I find out more.)


1

How did you download the program to the EV3? According to this post on the Mindstorms forum this can occur if there was a problem sending the program, usually via poor quality Bluetooth adaptors. You can confirm this if the downloaded program is only a few bytes in size on the Brick. If this is the case, try downloading the program via a USB cable.


1

Communicating with the NXT from the LEGO MINDSTORMS EV3 software is not supported. From http://www.lego.com/en-us/mindstorms/support/faq/: 3.10 Is the LEGO® MINDSTORMS® EV3 Home Edition Software backward-compatible with NXT Hardware? Yes. You can program your NXT Intelligent Brick using the new LEGO MINDSTORMS EV3 Home Edition Software. However, ...


1

Can I only set an [out] param once? Yes. You cannot tell it to be 2 different values at the same time. This applies to any block, not just the output block. Does setting the [out] param act like the "return" keyword? Not really. The return keyword in most (if not all) programming languages causes the function to exit, which is not the case here. ...


1

Microsoft have just announced that they are releasing an API for Windows 8.1 and Mindstorms EV3. Hopefully this will mean some apps for the two platforms will emerge sometime in the future.


1

The move steer and move tank blocks take 5kb each while the large motor block takes 4kb. If you have a long string of move blocks in your program, it will take up big chunks of memory. We've gotten around that in the past with using myblocks. Myblocks are only copied to the NXT once and called each time it is needed in the program. A pivot myblock might take ...



Only top voted, non community-wiki answers of a minimum length are eligible