Hot answers tagged

20

Update: I have written a tool to disassemble EV3 programs. The EV3 software compiles the .ev3 file to a .rbf file and sends that to the EV3 brick. The disassembler can convert the .rbf file into a .lms file, which is a sort of assembly language that can be used to create programs for the EV3. Here is a simple example using a trivial .ev3 project. To ...


8

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 ...


8

I just updated to Catalina Beta 10.15 and as expected, the software no longer starts. The same happens with both the Home and the Education version. Source: https://education.lego.com/en-us/support/mindstorms-ev3/software-launch-issues Alternatives If you are an existing EV3 Desktop software user and depend on being able to use existing programs or ...


7

By adding two motors together with gears, you have doubled the torque the motors provide. Power = torque x speed, so if you don't want the doubled power from the motors to go to the torque component but to the speed component instead, I think you should use a differential and put the motors on both outputs of the differential, and use the input to feed your ...


7

In general, would you recommend switching to a normal programming language (I am quite "fluent" in languages like C/C++, Python and Java) in order to avoid having to use blocks when building more complex programs? Yes, especially if you plan on doing image processing. If so, which programming language would you recommend? I feel like there is a big ...


6

It is possible now (since version 1.3.0) by pressing the button at the upper left corner of the block:


5

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 ...


5

My team put their software fix in a loop with a small wait that cycles until the d/s = 0, then reset it to 0. Here's a simplified version: It works like a charm. We don't mess with the hardware reset anymore. Combined with a heading variable, a turn my block, and a few drive my blocks they can program a maze run in minutes. FWIW: They output their angle ...


5

You can download the Ultrasonic sensor block (and Gyro sensor too) from the official MINDSTORMS website. Look for "Ultrasonic Sensor Block" near the bottom of the downloads page.


5

I found an answer. I read in a book that I can't fork in a loop. But I can do up to 4 separate threads. So I did 3 threads: Running/changing motors speed based on a variable "i" which is changed in other threads. Waiting for a touch sensor A being bumped and increasing var "i". Waiting for a touch sensor B being bumped and decreasing var "i".


5

It looks like the page listing downloads is down, but direct links to the downloads still work. I believe that this is the file that you're looking for: https://www.hitechnic.com/upload/306-Color%20Sensor%20V2.zip


5

In the meantime you could use the early release of the new version, made available for the home edition of the EV3.


4

It is not possible to modify the properties of myBlock in the current version of EV3 SW. It is possible by tampering the block source files: create a copy of your *.ev3. Just in case rename *.ev3 to *.zip extract all files from the zip edit files as needed move changed files back into zip (Under Windows drag and drop to zip) rename *.zip to *.ev3 I ...


4

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 ...


4

Unfortunately, you cannot use the LEGO 8528 (NXT to RCX adapter) cable with sensors on the EV3. You can use it with motors though. This is because the adapter cable only connects to pins 1 and 2 on the MINDSTORMS (RJ12) connector. On the NXT input (sensor) ports, pin 2 is GND. On the EV3, however, pin 2 on the input port is no longer GND. It is used to ...


4

You should be able to go to the project tab (1) - it's the one with the wrench icon - and delete any unneeded items. Just select the item (2) and click the Delete button (3).


3

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.


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.


3

Recently in the scope of a pet project I have put effort into finding a way for systematic decoding of the rbf file to EV3G compatible high level blocks buildin upon David Lechner's disassembly work. Currently the project has over 95% coverage (all common blocks recognized) called EV3BrickMagic You can try the result online - http://ev3treevis....


3

Using the mouse, you can click on the gray arrows on the edges of the screen (indicated with red arrows below). You will need to close the Content Editor to be able to see the one on the right clearly. Another option using the mouse is to use the "pan" tool. Click on the tool icon that looks like a hand (circled in red below). Then use it to click and drag ...


3

You can use the Loop Interrupt block. Just make sure the name used in the Loop Interrupt block matches the name of the loop inside of the My Block.


3

I can't say that I understand your problem, but maybe this link will help EV3 Move Steering Block Explained If you are asking about how the steering parameters relate to how much the machine will turn, then that is going to depend very much on the geometry of the machine: wheel diameter and wheel separation.


3

It is not possible to control the LEDs separately using the official EV3 firmware. You would have to modify the kernel drivers. You can only use the predefined patterns shown here. ULONG LEDPATTERNDATA[NO_OF_LEDS + 1][LEDPATTERNS] = { // LED_BLACK LED_GREEN LED_RED LED_ORANGE LED_GREEN_FLASH LED_RED_FLASH ...


3

It is not a protocol limitation. It is a sensor limitation. There is a microcontroller on the LEGO EV3 Ultrasonic sensor that cannot be updated so there is no way to measure more than that. So to measure more than 255cm, a 3rd party sensor is needed, e.g. https://mindsensors.com.


2

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. It just ...


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

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

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.


2

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, not all ...


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