text:
Tips on shipping large sets (super star destroyer, 2001 Discovery ship)
I have two large sets I'll need to sell when I move (SW super star destroyer, and 2001 discovery). They are both very long (5 feet?) and impractical to ship complete. Any tips for newbie in best way to pack them?
For example, should i minimize disassembly and only disassemble enough so it fits into the shipping box? And would bubble wrap be enough to protect the bricks?
(since i'll be selling them without manual or original box, I'd assume that buyer will be more experienced LEGO builder)
Thank you so much!

I would suggest that you first ask the buyer what they would like. For example I would definitely prefer to get the set fully disassembled as I would like to build it from scratch.
If the buyer doesn't care which way you ship it, fully disassembled is still the safest way. It will take up less room and also it is less likely that parts will be damaged or warped in shipping. You can pack loose parts in ziplock bags.
If the buyer would like the set partially disassembled you can take it apart in the most logical sections, then first wrap each section in cellophane wrapping (the kind used for food). Cellophane protects an assembled set the best because it "sticks" to LEGO leaving little or no gaps, so parts won't fall off. Once you have done that, use bubble wrap around the sections to protect them from bumps while shipping, then place them in the box or boxes.
Also, use FRAGILE stickers or stamps on the box. They do help. And make sure you buy full insurance to cover any loss or damage. Even if the buyer doesn't want to pay for it, it is worth it for your own peace of mind. Hope this helps some! ;)

Thank you! Looks like disassemble it is the way to go, and then I can post those photos when selling too.

Yes, that is a good idea. Buyers like to see a neatly arranged set of parts in zip-lock baggies. It indicates that you have taken good care of the set and will likely get a higher sale-price too. Good luck with the sale! :)


text:
Difference between LEGO Castle and LEGO Kingdoms
Can anyone explain what the difference is between LEGO Castle and LEGO Kingdoms. I don't understand why they are not in the same product group. Also LEGO Kingdoms is no longer listed on the lego.com website.

LEGO Kingdoms is a sub-theme of LEGO Castle. LEGO Castle is one of the oldest LEGO themes, and through the years it had various sub-themes like Knight's Kingdom, Fantasy Era, Dark Forest, etc.
The current LEGO Castle theme is simply called LEGO Castle without a sub-theme name and I think that is causing the confusion. The previous LEGO Castle theme released between 2010 and 2012 was called LEGO Kingdoms. The only set that is still available from LEGO Kingdoms is the #10223 LEGO Kingdoms Joust set.
At the online LEGO Shop you will see that the two themes are listed separately. The reason being that they are actually two sub-themes of LEGO Castle, even though the current one doesn't have an official sub-name. So to be clear, LEGO Castle is the theme, with two current sub-themes; LEGO Castle and LEGO Kingdoms.
LEGO has always listed sub-themes separately. For example when LEGO Kingdoms first came out there were still some LEGO Fantasy Era sets left from the previous years, and although they were both sub-themes of LEGO Castle they were kept in separate categories. The same thing is happening now, except this time one of the sub-themes have the same name as the main theme. I hope this is not too fonfusing...(c;

source: Stack Exchange

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/3.0/

sort: votes


text:
What is the difference between these hole shapes?
I purchased an assorted bag of LEGO Technic pieces. There are pieces with axle holes, but what puzzles me is that the holes are different from what I am familiar with.

There's a piece with an hourglass-shaped hole (center of photo). What is the purpose of this shape?
There's a piece with an hourglass-shaped hole, but with two thin tabs (left in photo). What is the purpose of this shape?

I'm familiar with the normal round hole, in which an axle can rotate freely, and the "plus" shaped hole, found in cogs etc., that grip an axle so the piece doesn't slide along the axle. But these two are new to me, and their purpose isn't obvious.

I read your question and really can not understand what you are asking. I suggest you to add some images to illustrate because many others will find this explanations confusing but might give you an answer if you illustrate.

I said I will upload a photo. The mobile app can't do that. Can you wait a few hours?

@TorbenGundtofte-Bruun: I've added a photo to illustrate (4), based on your description. Is that what you had in mind?

Thank you @Kramii, that's right! I've swapped it for my own now.

See this answer for more info: http://bricks.stackexchange.com/a/6462/5687

These are 3 different versions one the same shape / function that fit over axle.

The right one is the oldest from the 80
The left one came next
The middle one came after that.
To make it more confusing, lego is now back producing the right shape again

What I can remember had the original one a lot of clutch power and was hard to be removed.
Personal I think the left one had some problems with manufacturing, due to the small tabs.
I believe the middle one broke easily.

all_licenses: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/3.0/


text:
Where to order custom mini-figs in Europe
General question is are there any custom Lego minifig online stores in Europe like there are many in the US ?
In detail:
My friends friend is getting married and she would like to surprise them with an original gift.
She is looking for two specific LEGO minifigs, custom or not but from sellers in Europe because she needs those for next Wednesday. these are the minifigs she is looking for:
Star Wars Queen Amidala
http://www.ebay.com/itm/LEGO-Custom-Star-Wars-Queen-Amidala-4-Handmaidens-Invasion-Dress-03dB-/170787423998?pt=Building_Toys_US&hash=item27c3b946fe
Mario
http://images.sodahead.com/polls/001480721/3cea492bc51cc7ffd403f2deaf7cb328_answer_5_xlarge.jpeg
They don't have to be these exact ones but those same characters.

Your friend can get Queen Amidala at several shops based in Europe. Here are all the listings with the country of the shop: http://www.bricklink.com/catalogPG.asp?M=sw387. It might be also worth checking the eBay listings specific for their country.
As far as Mario, LEGO never made an official one, however this UK based store does carry some: http://www.customminifig.co.uk/super-mario-bro-custom-minifig/

Thank you for your suggestions they are quite helpful. I searched on Bricklink and found some of these stores but this format of search results is much easer to read (how did you get it in this format). This store in the UK does seem promising and I am going to send her the link. I visited it earlier once but didn't know they are UK based (it's obvious of course but it wasn't relevant to me back then). Are there any other stores in Europe that you know of? Some preferably in Austria or Germany.

To answer your first question, my preferred method of searching on BrickLink is to use Catalog Items, instead of Items for Sale search. For example in the case of Amidala, I would type Amidala in the search box at the top of the BrickLink front page, but switch the drop-down menu next to it from Items for Sale to Catalog Items. The search will give me the results. Then I click on the one I want (in this case the Amidala Minifigure). Under the item details there will be a link to the rigth titled Price Guide info. If you click on that, you will get the sceen you were looking for.

In regard to your second question, there are many-many stores in Europe. On this page you can see all of them categorized by country: http://www.bricklink.com/browse.asp


text:
Is there a way to buy LEGO houses without minifigs?
Why are there so many LEGO Friends minifigs, but barely any houses? I have made about 10 families and I still only have one house.

Please note that LEGO Answers is not affiliated with The LEGO Group. I have edited the question to reflect that.

LEGO Friends are essentially the same as minifigs when it comes to building things like houses. The main difference is the colour palette. If you don't mind that your Friends live in houses that use primary colours instead of pastels, you can just buy any regular Lego house (the Creator line has many) and put Friends in there. Previous houses from the Creator line from 2007-2010 did not include any minifigures, but current houses typically do include some minifigs. Feel free to mix them with the Friends mini-dolls or keep them in storage or give them away if you want.
You can also download the instructions for any existing model and the recreate it using Friends-coloured bricks if you prefer to use those colours.
If you're curious about sets that might be available now that feature houses, Brickset allows you to search sets tagged "house" or sets containing the word "house" in the name. You can sort the list by year of release in descending order, to show you sets more likely to be available in stores.
Some houses that were for sale in 2014:
31012 Family House

7346 Seaside House

10228 Haunted House

The best way is to obtain loose bricks and make up your own houses!


text:
IDE recommendations for EV3 programming
Does anybody have any recommendations for non-GUI programming of the EV3 unit?
I'm impressed by the LabVIEW software, but as a professional C# and VB.Net programmer (with C, C++ experience), I find it slow and difficult to implement complex mathematical formula.
In particular, I love the ability of LabVIEW to transfer and run (and effectively debug) programs directly into the block with BlueTooth, so an IDE with that capability would be ideal.
Any suggestions would be greatly appreciated.

Since you are a C# pro, I would recommend MonoBrick. I know they have a plugin for Xamarin Studio/MonoDevelop that lets you do remote debugging. Not sure if they have one for Visual Studio yet.
There is also EV3Basic, which is an IDE that lets you program the EV3 using the BASIC programming language. Unlike most other 3rd party programming languages this one actually uses the official EV3 firmware.

Thanks - looks interesting... I'll investigate when I get a spare moment, which unfortunately won't be any time soon.  Thanks for your time :-)

Maybe I should have looked at the website a bit earlier - didn't realise you needed a spare SD card (which, despite being professional IT, I don't actually have)... oh well, will have to wait a bit longer

I wrote an Eclipse CDT (C/C++) plugin which lets you create projects and compile/upload/download them. Check it out!
The EV3 has a gdbserver running on it, so you can connect to it from Eclipse. The plugin doesn't automate that however. (Maybe you feel like fixing that? ;)

I made an IDE available on a simple wibsite at the following address:
http://jasvap.somee.com ( use this to see a screenshot )
If the above link doens't work you can download it from my OneDrive disk (preferable):
http://1drv.ms/1yJi3cp (use this to download the program )
Please read the README.txt file that will appear when you open the program!!!
Hope you enjoy it,
Steven Persyn

Mac users, I worked on Robotary, a Swift-based IDE for programming both the NXT and EV3.
It has compiler-driven code completions, syntax highlighting, an LLDB-based debugger, Bluetooth and USB support, various examples, documentation, and various tools (file manager, screen mirror, etc.).

link looks broken...

I like the EV3 Swift playground for iPad. It's not 100% feature complete but does the job.

all_licenses: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/


text:
What's the most effective way to clean dusty builds?
I have a large airplane build that I haven't touched in quite a while, and it has built up quite a large amount of dust. I've tried using a wet washcloth to wipe off the dust, but when cleaning that way I can accidentally break off large chunks of the build. So, how can I clean off dust in the most efficient way?

Hi, and welcome to LEGO Answers - I think you'll find the answer to your question here: Cleaning between the studs :)


text:
How do they keep the outdoor models so clean at the various Legoland parks?
I've visited Legoland in California a few times and was always impressed with the lack of accumulated grime or bird "strikes" on the outdoor displays. How do the park employees accomplish this feat? What combination of tools and/or techniques do the Parks utilize to keep the models free from build up?

I've been to Legoland Windsor (in the UK) on one of the days they were cleaning some of the boats, and it looked hard - all manual work, with a large toothbrush and plenty of elbow grease


text:
Can I build UCS Death Star by buying bricks separately?
I'd like to get the UCS Death Star, but it's too expensive :(
I got the build manual, and I see what bricks I need. I am thinking of buying them separately via Bricklink.
Has anyone tried doing that?

There is a whole site dedicated to working out how you can build a particular model using parts from other sets - Rebrickable. A combination of that and Bricklink would be cheaper as you'd end up with fewer extra parts.
There's also a thread on EuroBricks where someone has done what you're doing and there are some useful tips (mostly about buying as much as you can from a small number of sellers to avoid huge postage costs). Brickset's "links" tab is handy for more information on the set.


text:
Help with identifying LEGO sets
Our family (with very big hearts) gave us some LEGO they found.
But... I do not know what sets they are from. I already identified 11 sets, but cannot find the last 4 (I think)
Could you please help?

Construction machines

Recycling truck

Girl car

Firetrucks

Please, do not pay attention to the state they are in. I still need to clean them. But I'm reluctant to dismantle them until I know what set they are on ( and have a manual to put them back together) .. yep, I'm a freak ;-)
Please, any hints are welcome.

I believe that this covers everything:
Construction vehicles:

Diesel Dumper (6532)
Backhoe (6662)
Landscape Loader (6512)

Recycle Truck (6668)
Friends car (30103)
Fire vehicles:

Jetport-Fire-Squad (6440)
Launch Evac 1 (6614)
Rescue Runabout (6511)
Looks like just the car from Shell Convenience Store (1254)

The one on the left is 6511-1: Rescue Runabout


text:
Any way to make this setup "tighter"?
I'm trying to build a robotic arm, and I had the following built so that there was the minimum possible movement created by the gear wheel (that connects to the worm).
However, there is still play, where all the pieces are pushed together by the force of the gear wheel the worm drive is connected to... this leave a small (but significant) gap, allowing the cross axel to slide.
Is there any way to build this without the play, as it doesn't help when I'm trying to build an arm with a fairly high level of accuracy?

You could introduce an arbitrarily sized gap between the red and yellow bushes in the depicted design, thus forcing the other yellow bush and the black gear against the frame. If this gap collapses due to the forces generated by the worm screw, you could place thinner, non-LEGO pieces (washers, bits of paper, etc.) between them to act as spacers. This won't win any prizes for beauty or elegance, but it might just reduce slop to bearable levels. It would also increase friction.

Washer... brilliant!!  As you mention, not exactly "orthodox" but hey, that's got to work!  Will let you know how I get on :-)

Perfect, works like a charm :-)

There are 2 ways to get it tighter. First is to use the new worm gear part:
http://rebrickable.com/parts/15457/Technic-Worm-Gear-2-Axle-Holes
The other is to use an axle with stop. Have the stop on the end which has the worm gear pulling it in. Not sure which end that is, so experimenting would be your best bet.

Thanks @tl8, I wasn't aware of that part, although not entire sure how it would be tighter, as the 1x3 part would just be replace 1x2 and two 1x0.5

The 'old' worm gear is not exactly 2. It is more 1.9. Additionally, there is no friction on the gear so it slides a lot. The newer one is exactly 3 and has plenty of friction that reduces sliding.

Ahhh... that would definitely explain it.  I will look at getting a few of the new ones, but for now zovits suggestion of a small washer is working perfectly for my current needs. Thanks for your time  :-)

Pre-tensioning or pre-loading, the way that most CNC machines work. In essence this means a constant force pushing one way, so that the slop doesn't matter. Often you can do this with gravity, and if  slop at one (or two) when you rotate is acceptable then that may be all you need. If you do have variable-gravity parts that need pre-tensioning, try to make that dynamic so you're not fighting both gravity and preload on some movements.
It may be possible to work around some of that using strings'n'springs, so you have hidden counter-pulls on some heavy parts (the way old school drafting desks and anglepoise lamps do).
As you might gather from high-end metal work using springs or gravity for pre-load, there's no way to actually machine anything without some slop. Lego has a fair bit of slop by design, so you're going to find it even harder.

Yes, @Mσᶎ I think you're right, it's going to be pretty difficult to stop this. I guess I need to take the slop (wasn't aware of that term) into account

one reason for my answer was to drop a bunch of those terms in so you can search for solutions more effectively :)

Use LEGO Rubber Bands as spacers.

LEGO has several sizes of rubber bands - some are quite small, and they are perfect for small spacers when doing builds like this. Just twist them a couple times and you're set.


text:
Pass sensor or motor port number as a parameter
I want to create a block for one light sensor or one motor separately. Is it possible to give the number of the port as a parameter to a sensor or motor block via data wire? In NXT-G it was possible.

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 principle applies with sensor blocks. The input for both sensor and motor blocks is read as number, and you can validly enter a number 1-4 to represent which port.

In the above example, a variable is created, and that variable is then passed to both the motor and sensor blocks. Since it was set as 1, it will move motor connected to port A, and wait until the touch sensor connected to port 1 has been touched.

I just test with my EV3 with version 1.2.2 and V1.09H firmware I have connected motors to Port A B C, and number 1 to controlling motor at port A, not 0 so the result is 1-4 mapped to port A B C D Hope this helps.

Thank you so much for the correction @dogwong! I have edited my answer to correct this.


text:
Connecting a webcam to NXT and streaming a video
is it possible to connect any webcam or modify it in such a way that the NXT controller will be able to stream a video to another computer? Iv'e seen there are special sensors for it, but I can't really buy one on the internet.
So is there a way to take a webcam and connect it to the NXT controller? Also, is it possible to stream videos through Bluetooth? Or do I need to somehow connect the controller to the internet?

The only camera capable of connecting directly to the NXT is the Vision Subsystem for NXT or EV3:

With modified firmware, it is possible to send images from the cam to the NXT to the computer. But trying to stream video via this technique is impractical since each frame takes about 30 seconds to send to the computer. If you had a connection over USB, it would probably operate faster, but still not fast enough to effectively stream video.
If your goal is for the images to reach the computer, though, why does it need to pass through the NXT first? Why not use a webcam that sends the video directly to the computer? It would be much faster. There's software to support controlling NXT robots and receiving video from the webcam, such as iCommand. Or alternatively, you could have one window streaming video, and have the NXT software or BricxcC open in another window for controlling your robot.

This exactly. Do you really need to have the camera connect to the NXT? It is much easier to just physically attach a completely separate webcam on your creation that handles the whole streaming itself over some wireless connection (e.g. a separate Bluetooth, an existing WiFi or some proprietary protocol).

That's not the only camera you can connect. There's the Pixy camera that has similar capabilities: http://charmedlabs.com/default/pixy-for-lego-mindstorms/

I would suggest to use something better - Raspberry Pi. It can control motors via shield and transmit video via bluetooth. It is cheaper then mindstorms and needs only Power functions.
Vehicle with control via bluetooth


text:
Design of record-breaking builds
This is more a theoretical than practical question...
If one wanted to build a 40-metre tower out of only Lego using the fewest pieces or cost, what design would be a good one, e.g. types of pieces and overall shape?
I've just read that some builders in Budapest broke the world record for the tallest Lego tower at 34.76 metres. It looks like a simple elongated pyramid.
The previous record holder used a cross-shaped cross-section.
BBC has also featured some research to calculate the maximum theoretical height.

How broad is your definition of, 'pieces?'  Would a Technic frame still count as a Lego tower, or are we talking about only basic bricks stacked flat?

Are you limited to generic pieces or can you use custom parts; for example pieces used to create walls and wall corners in Castle?

@JoshDM you mean BURPs? I was thinking either 32 long axles or the unfortunately rare 2635 crane leg parts because they're tall and pyramidal already.

If you could design using Technic Axle 32 as your primary member that would probably be cheapest. You can get 500 of them for under $1 each on BrickLink, and making an Eiffel Tower shape out of those could be fairly strong. You'd be using axles in compression which isn't ideal so you'd need to be careful about bending forces, but in terms of cost per metre of height that's about as good as you can get. 32 studs is about 25cm, so your 40 metre tower is about 160 axles high. Assuming four legs (because Lego makes rectangles easier than triangles) you'd need 480 axles for the legs, plus another hundred or so for bracing. If you could work out a way to use only 3 legs the structure would be lighter.

You'd use axle connectors to join them end to end and either Technic liftarms or string for bracing (compression and tension respectively). There are Technic link parts in a few lengths that are lighter than liftarms, like this 15-long one and the tension member at the bottom would be a baseplate (or several baseplates)
If you made it modular using a "platform" that was, say, 16 studs square you'd end up with extra internal legs but a very easy to build structure. Say you make a tower that's two metres tall (8 axles) and tapers from 32x32 to a point. Four of those next to each other would support another similar tower on top of all of them. And so on, but the inside towers will end up with 2,3 or 4 towers sitting on top of them. A better design would make set of four symmetrically located parts "unique" and thus use fewer total parts but at the cost of the whole model being significantly more complex. On the other hand, I think you'd be able to get more than 2m out of each stage of such a tower.
I might have a go at a short version of this tonight if I can find my collection of long axles and see how stable it is. Somewhere in the garage is about 20 of them, so I should be able to get a metre tall fairly quickly and easily... if I can find those axles.
An alternative part that would involve a lot of SNOT techniques would be single train rails. Or even the modern click-together rails. I can't think of a good design for those off the top of my head, though.

Couldn't find the axles easily, this one will have to wait until I unpack the collection (after we move, hopefully in not too many months time)

Just using bricks the cost argument becomes more important. Unfortunately large quantities of bricks really require that you deal with The Lego Group directly (and they're usually quite happy to deal). For rough price guides we can look at bricklink again. Sorting by quantity available from a single seller for some common parts (we don't care about price per metre if we can only get 20 of the part), cost per 2x4 brick volume in bold:

1x1 brick in dark bley: 24k at ~2c each and another 19.5k at 4c each (3k@16c)
2x1 brick in dark bley: 12k at ~7c each, then 1.9k at 6c (3k@28c)
2x2 brick in white: 7k at ~12c, 7k at ~23c (3.5k@24c)
2x2 brick in dark bley: 4k at ~8c, 1.5k at ~11c (2k@16c)
2x2 Corner Dark Bley: 4k at ~9c, 3k at ~8c (1.5k@24c)
2x4 brick in white: 6k at 18c, 4k at 58c (6k@18c)
2x4 brick in dark bley: 5k at 28c, 5k at 19c (5k@28c)

The bold figures give you a direct comparison, suggesting that 1x1 bricks are the same price as 2x2 bricks but more fiddly to work with and probably both heavier and weaker. Note that volume available increases with brick size for the most part.
So it looks as though your cheapest bet via BrickLink would be a containment wall of whatever larger bricks you could find with a core of 1x1 and 2x2 bricks. I suspect if you built a want list with the more common 1x1 bricks you could find one or two sellers who have lots of that size and do a deal "I'll buy all of them", because 1x1 bricks are a slow seller but you get a lot of them in the "bulk bricks" sets when sellers part them out.
Or just ask TLG for a couple of hundred kilogrammes of 1x1 or 2x2 bricks and see what you can get cheap. If you have media and charity tie-ins organised and some plans for the tower I suspect you'd get a better reception. I'd be tempted to add 2x3 or 1x3 bricks to tie things together, since compressive strength is not the limiting factor (see Ben's answer). If you're doing that it's probably better to model a few different bricks (or find the data online) so you can have an informed discussion about which bricks you want.

The research from the OU indicated that the 1x1 bricks would be stronger than a 2x2, which in turn were stronger than a 2x4, presumably due to the greater amount of "wall" to surface area.

The key point that the team at The Open University calculated made was that while  you could in theory build a tower about 3.5km high of bricks before the ones at the bottom would be crushed by the weight of the ones above - this was based on the load-bearing ability of a single 2x2 brick - they also stated that a 2x4 would fail sooner (less support on the sides I assume).
However, in practice this wouldn't be possible as:

"There isn't a chance you could do it in reality," Johnston says. "Long before the brick fails, the tower would fail as a structure itself, by buckling. The other thing you have to remember is that we were very careful to load this equally down the middle, so that all four walls were loaded."
A 3.5km tower would have to be built so straight that it was no more than 2mm off centre at the midway point

The 12m high (40ft) Christmas tree that was built in St Pancras was built around a metal frame for additional support and rigidity.
Note that the GWR is for "Interlocking Plastic Bricks" which would certainly rule out the use of string, and might also rule out the use of axles as they are not "bricks".

yeah, GWR are quite specific and rule out basically anything using Lego Technic parts. Technic cranes often top 4m using truss frames of liftarms, but GWR doesn't allow that either (even if you use "technic brick with holes"). It's stacked bricks or nothing.

I have done some research into this as well. http://eprints.usq.edu.au/20528/1/Lostroh_LegoTesting_2012.pdf Might be helpful

Actually, the 3.5km limit is easily reachable just by making the pyramid wider. If the base was 3.5km on a side and tapered straight to a point at 3.5km high it'd be pretty stable. And heavy. And use a lot of Lego.

But building a pyramid would also result in more than the supported 4000N of force on the bottom - so you wouldn't really manage to reach the upper limit as the bricks would crush at a lower height...

@Zhaph-BenDuguid: Not necessarily. Building a pyramid would cause less load on each of the bottom bricks compared to a straight tower with the same height. If the pyramid is built solid, the inner bricks would also have additional support from the side, most likely increasing the weight they can carry before breaking.


text:
Can't get EV3 to work with touch sensors
My FLL team just got a couple of EV3 sets and the kids were trying to program a simple switch that has the robot drive into a wall, back up, and turn right once the touch sensor in the front is pressed.
The pressed condition in the switch has a move tank going backwards followed by a turn.
The unpressed condition has a move tank going forward.
The robot just goes forward and does not stop after it runs into the wall and the sensor is clearly pressed.
We tried switching the bricks, the sensors, the cables, the ports and reinstalling the firmware. Nothing works. Help...
Thank you for the replies. I'm not sure I'm responding in the right spot but here is the screenshot:

Also, it's not a port number issue. In fact, when you check the ports on the software it shows that it's recognizing the sensor and its state on the correct port. And it does get pressed. We even tried pressing it manually just to make sure.
I just reinstalled all the software and firmware and now it's not even going through the switch! It just skips it and goes on to the last block. I think I'm out of my depth here...

Please provide a screenshot of the EV3 program.  I suspect the sensor port number is the problem.  The EV3 does some work in the background to get this to work automagically.

Is the EV3 like the NXT where the sensor part for the program consists of 3 blocks motors on, wait until, motors off (used to be motors unlimited, wait until, stop)? Without the stop block I have never managed to get sensors to work.

Are you sure that the button is being completely pressed? A quick test would be to hold the robot and manually press the touch sensor. If the wheels start turning backwards, then there isn't anything wrong, you just need to make sure the button gets pressed completely.
If you're sure the button is being pressed, then it's probably a software problem. It seems like you have a conditional block, is it reading the same port that the sensor is connected to.
You could make a really simple program that has a forward tank movement inside a loop and make the exit condition for the loop be to exit when the button is pressed. If you put an end block after the loop, the robot will drive forward forever until the button is pressed.
Hopefully one of those options will help you fix the problem!

Code is works as the robot is behaving. The problem is that the first block is a sensor block, which is processed in the blink of an eye. The second block moves forward for 2 rotations at 50% power.
So long as only one sensor is being watched, a wait for block is sufficient. Here is an example:


text:
What's the best way to machine LEGO pieces on a mill?
Does anyone have experience with modifying LEGO pieces on a mill? Any suggestions on cutting speed?

I don't have any experience modifying a brick with a mill but I have had success using a drill press, knife, and dremel. I can't imagine there being any problems while using a mill.
If you're looking to clean out the pipes inside a brick, I've found higher speeds with a drill work better. At a lower speed, the bit cuts into the pipe but doesn't remove any of the plastic. When the bit is spinning faster, it doesn't cut into the pipe but shaves the plastic off.
Lego is ABS plastic, I believe, so doing some research on working with ABS, rather than specifically Lego, might give you more answers too.


text:
EV3 parallel MyBlocks, but only one working
TL;DR = Is there any obvious reason why a MyBlock, added twice in parallel to a program, will only run one of them?

In my EV3-G program, I have a MyBlock which uses the Proximity Heading to control a motor so that the heading is always straight ahead.  (It has some added complexity, as it slows down when getting close, etc.)
My robot-arm has two infrared sensors, one mounted horizontally, one mounted vertically, so the arm can always point at the beacon... and the MyBlock has been setup with parameters, so that the corresponding port/motor numbers are passed in.
Is there any reason why two MyBlocks, running in parallel, would only work on one of those blocks, and not the other?  (When debugging, both blocks are "shimmering", show they are both apparently running.)
I have double-tripple-quadruple checked that all the flow-control, sensor and actions are working with the correct parameter values, and running each block individually works perfectly.
I have also replicated (at great length) the blocks in brand new programs, and they work without issue.
Why would two blocks running in parallel not work, when the same code replicated on the program does?

UPDATE
As requested (and I should have done originally).
Here is the MyBlock.  It starts with 3 parameters, the sensor port, the motor port and an "offset" - all numeric.  The loop starts, and a direction heading reading is taken.  It then uses the "offset" value, and passes "offet - 5" and "offet + 5" into the range

Based on the boolean value from the range, if the current heading value is within the range, then it runs the motor at a "graded" speed, based on the heading value. Therefore as it gets closer to 0 the slower the motor is run.

If the current heading value is outside the range, then the motor is run at a non-variable speed... in this case if the value is below the "offset" value.

And in this case if the value is above the "offset" value.

The program simply calls two instances of the MyBlock.  If I run the left one, the horizontal detection and movement works without issue - if I run the right one, the vertical detection and movement works without issue.

But, if I run the following, only the last MyBlock to be wired works.  There is literally movement from just one direction motor.

Please, a screenshot or two.

Hi @dfrevert, of course - that is something I should have done up front - apologies.  Hope the explanation is clear, please let me know any more clarification is needed

I could not find this in the help file, but according to this thread "Another little known characteristic of MyBlocks is that they aren't re-entrant. No two copies of the same MyBlock can be running at the same time."
I tried a few simple programs in EV3-G and confirmed that this is true. The order in which they run appears to be random.

Well, that would certainly explain it. Nicely found @David, thanks :-)

MyBlocks are not reentrant; only one thread can be using the block at a time.  When a second thread tries to execute a MyBlock that is being used by another, the second thread blocks until the first thread exits the block.
This normally isn't a problem for MyBlocks that do simple calculations.  They finish quickly and all threads make progress.  But if a MyBlock contains a loop or wait, other threads that use the same MyBlock can be blocked indefinitely.
From the debugging view, a blocked MyBlock shows as active.  This makes it very difficult to debug.  You might try placing different sounds before and after the MyBlock, to see which thread is getting stuck.
A simple solution is to create multiple copies of the offending MyBlock and have each thread run their own copy.
(DavidL's answer was fine.  I just offer this for more completeness.  Happy programming!)


text:
Good EV3 iBook for programming or building
I am a participant in a Lego mind storms competition soon using EV3. I would like to know if there are good, free iBooks for me to download (PDF or iBook from the apple iBook store).
Preferably the book should be about using EV3-G or building playing field style robots.

First answer is google: FLL EV3 PDF
EV3 and PDF are obvious. FLL is short for FIRST Lego League, which may or may not be for "playing field style robots".
Clinics for coaches and kids at HighTechKids.org use FLL Programming 101 as a starting point.
The EV3 is new enough, that some of the best programming advice for FLL is directed at the NXT.


text:
How to restore old, scratched plates
I have some old lego plates that are quite scratched. They look rather dull compared to the newer pieces in my collection. Is there any way to restore (even partially) the shiny look between the studs?
I'd heard that using toothpaste can help smooth out transparent pieces, so I tried putting toothpaste on the plate. However, it seemed like it would be insane to try to rub the paste manually between all the studs... so I used a nylon brush to brush the plate. That didn't seem to help much, but didn't make it any worse. Would it have worked if I'd manually rubbed the paste in? Is there a faster way of doing that?

Brasso (yes, the metal polish) works better than toothpaste in this case. It is a bit more grainy so works faster but doesn't damage the parts. It does take some work though that may or may not make sense depending on the rarity of the elements.
And yes, with either toothpaste or Brasso, you actually have to vigorously rub the surface to buff it up. It might be easier and cheaper just to replace the worn parts with new ones if they really bother you.
LEGO getting scratched up a bit is normal. In most colors you won't even notice it, but there are certain colors where scratches are more visible — with black being the worst. So it actually helps to store black parts stuck together to prevent rubbing against each other in storage.


text:
Legal free NXT-G download
Where can I get a legal, free copy of NXT-G for mac?
I lost my disk when I bought my NXT, and I need to get a new program.

LEGO has recenlty made this easier to find:
http://www.lego.com/en-us/mindstorms/downloads/software/nxt-software/

Try looking around here: http://service.lego.com/en-us/helptopics/products/themes/mindstorms/mindstorms-nxt/nxt-software-download
Or here: http://service.lego.com/en-us/helptopics/products/themes/mindstorms/mindstorms-ev3


text:
Chinese Knockoffs?
I'm looking at the Lego Super Star Destroyer on eBay and I see that a number of people are selling it for ~$600 USD. From time to time there are bids that sell at ~$300 USD that claim to be sealed and brand new. These sets come from Hong Kong or China from a user that has a 0 feedback. This seems to me to be a bit fishy since the set is now discontinued and it should fetch higher than the original selling price of $400 USD.
If you search Lego minifigures from the superhero lines, you get Chinese users selling packs of five minifigures for far below the asking price again. I asked about this one in the past.
Has anyone else noticed this? Do we have a brick authenticity problem?
mj
http://www.ebay.com/itm/LEGO-Star-Wars-Super-Star-Destroyer-Spaceship2-New-Building-Set-Battleship-/251594504283?pt=Building_Toys_US&hash=item3a9433785b

The SSD auction will be a scam and the minifigs are indeed knock-offs of which eBay is awash.

That's terrible. There are lots of people bidding on those items and it's a pity that they're getting robbed.

In terms of the knock-off minifigs, these are all over the place, including Amazon through sellers.

@mj_ Indeed - there apparently is no end to either human greed or human foolishness :(

For sets currently available through LEGO.com or other online retailers, the cheaper sets may be authentic, but part of a scam known as drop shipping.
This type of scam works like this:
You order a remarkably cheap, new LEGO set from eBay or the like.
The seller uses your contact information and a stolen credit card to purchase a set directly from an authentic retailer.
You pay the illegitimate seller.
You receive a package directly from LEGO that has a packing slip with someone else's information on it.
The "seller" now has cash from the transaction without needing a PIN for the stolen card.
You now have a cheaper set that was obtained via illegal practices.
A 3rd person is a victim of credit card fraud.
LEGO products are unfortunately ideal for this type of fraud, as they are high value and high in demand.

Also, depending on the laws in your area, you could be complicit in the credit card fraud by accepting a package in this scheme.  At the very least, you may owe the defrauded individual the value of the LEGO set you've obtained as a result of the fraud.  As in, the full paid value of the set.  And the only restitution you would have would be to go after the fraudster.

In the US at least I don't believe it works this way. For sets bought directly from LEGO with  fraudulent, the most that was done to the recipients (who did pay their real money on eBay), was to request they send the product back and try to get eBay to reverse the purchase due to fraud. The person who was ripped off is not given a refund by LEGO, but instead they have to report the fraud to their bank and request a charge back be processed. The name of the recipient can't be given to the CC victim, only to police at written request. The recipient is  a victim as well, not a perpetrator.

Note that 'drop shipping' is a perfectly valid and common commerce transaction. It'd be better to say that scam uses drop shipping as pat of the ploy, but isn't called that in and of itself.


text:
Is it safe to remove PC (polycarbonate) arms from minfigures?
I would like to replace the clear PC arms on the Chima ice figures with opaque ABS.  Would I still be able to use the clear PC arms with other figures after I have removed them?
I know that removing and replacing arms makes them slightly weaker and can only really be done once, what I am interested in is the relative durability of PC and ABS in this regard.

The clear PC arms are more brittle, however you should be able to replace them at least once, since the torso you are placing it into is ABS - so there is a bit of a give/flexibility on that side.
One thing to be careful of, is when you take out the PC arms (and when you put them in a new torso), do not hold the arms by the hands! This will put pressure on the wrists and can make the more brittle PC plastic crack. Either hold the arms further up, or even better, take out the hands first, then the arms. Hope this helps.


text:
Help separating a 6L stick with stop ring & 1x1 cone
I have a 6L stick with stop ring & 1x1 cone stuck together. I've been trying to separate them without success. Any advice?

Can you add a picture?

Note: if both pieces are transparent, be aware that that plastic binds to itself and LEGO doesn't allow certain connections in official builds, for that reason.

Immerse the stuck assembly in soapy water, swoosh them around a bit, then try again. That should do the trick. It is okay to wiggle the piece a bit from side to side to try to loosen it up. Even ABS plastic LEGO pieces are somewhat flexible and they won't break if you flex them a bit.
If nothing else works you may have to resort to plyers. Use the kind that doesn't have ridges, so damage to the plastic remains minimal. Also, use shop gloves or something similar to make sure you have a good grip on the end that you are holding with your hand.
If you do resort to using pliers, try putting a wide rubber band between the pliers and the pieces to further reduce the damage to your bricks.

Use two pairs of pliers (one on each brick), that worked for me.

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/


text:
What lego set is this? Possibly a pirate ship?
my wife picked up this lego set at a garage sale. The owner claimed it was a ship, perhaps a pirate ship, and that the set was complete. It does have something resembling a bow, and several tall poles, but no sails, which sounds suspiciously non-ship like. The most distinct piece is something like a black bicycle chain / rope ladder on a gear, attached to what looks like a 4-piston engine. There's another smaller chain as well. The entire set is in a beige / brown / black color scheme. Images below - can someone help me identify this?
(I already tried searching for the piece on rebrickable, but could not find it under any description I could think of.)

It's the Wright Flyer:
http://cache.lego.com/bigdownloads/buildinginstructions/4222843.pdf
It's the rule of posting on SE - I found it almost immediately after hitting submit.

It's a ship alright.. a heavier than air airship: Wright Flyer.
Quite a fun, if rickety. build.


text:
What's the purpose of the clutch gear in Power Functions set?
I have just bought this set and wonder the purpose of the white gear in the middle:

How can you use it in your Lego Technic projects? Is it available in other sets?

When your function (such as an extending crane boom) gets to one limit or the other, this clutch gear ratchets instead of binding up the motor and all the gears in between.
ETA: Forgot the second question. It has appeared in many sets, most recently the Fairground Mixer.


text:
Ideas to slow down RC PF train motor (Item: 88002)
I'm wondering if you already tried to slow down such a motor. I would like the train to run slower at all the supported 7 speeds. Anyway, at speed 7, the train just flies off the tracks.

Unfortunately it's direct drive so gearing it down really isn't an option. That leaves changing the electrical system.
What battery are you using? Fundamentally, any change to the electrical system is going to amount to "use a half flat battery", and if you're using a high-voltage battery now the easy option is to switch to lower-voltage rechargeable batteries. But that only works if you're currently using disposable AAA batteries in the 88000 battery box (or 6 AA's in the bigger one that I don't think I've ever seen in a train). If you are, switching to either NiMH AAA batteries or the the Lego LiIon battery pack 8878 will give you the effect you want.
Based on Philo's extensive comparisons but it's the speed/voltage graph that you probably care about more:

What you want to do is lower the voltage at each setting of the controller, and that means adding a resistor in series with the motor.
If you're currently using rechargeable batteries, the only option I can see is to modify the motor or IR receiver. It's just adding a resistor in the cable, so it's relatively easy to do and also to undo, but it's going to look messy and it will be more fragile than the unmodified item. If you're unsure (which I assume you are, since you're asking here rather than just doing it), it's probably better to buy an extension cable and modify that.
Your motor draws about 1.3A when stalled, and from the speed/power charts lower down, about 0.4A when running. I'm going to guess you want to lose about 1V from the 7V output of the receiver, so you need about 1/0.4 = 2.5Ω. Since that Needs to cope with about 1A, it would ideally be a 3W or 5W resistor but you can probably get away with 1W. I suggest using 2, 5Ω 1W resistors in parallel since resistors typically come in 1W and 5W sizes, and in 10% increments so you actually want 5.6 ohm. RadioShack sell them, as should any other electrical part supplier.
Again, Philo explains what the wires do (2/3 down the page), and the easy way to do this is to put the extension between the battery and the IR receiver. That way you put the resistor on an outside wire of the four. If you can solder the resistors in place it'll work better, but if you can't just stripping the wires and twisting them in place then holding it together with tape will work.

Thank you for such complete information.
So the "clean" solution is to use either the 7.4V set 8878, either rechargeable AAA batteries that have less than 1.5V each.

Similar topics come up regularly on various forums, like this one

When my train was flying off the tracks, I solved the problem by adding more cars to it, or adding extra weight to the existing cars.

Whilst that element is designed to be a "direct drive" system, you could try lifting it up and then stacking some gears on it - however you're going to have some issues with the width of the train/wheels and the track gauge and the amount of gearing you can reliably use because of the size of wheels.
In other builds I've seen, the builders have used the smaller motors and some bevel gears to transfer the power correctly.


text:
MOC planning and design
What tools do you use when planning and designing a new MOC? Pen and paper? Or there is something more advanced?
I had the insane idea to try LDD to design my MOC and it was a nightmare.
Since my MOC uses sets from castle fantasy, there are maybe 3D models ready to use for LDraw or other kind of software suitable for this task?
EDIT: I will go into further details to explain my issues better.
This is the list of sets I want to place in my MOC:
Fantasy Era:

7036 Dwarves' Mine
7094 King's Castle Siege
7079 Drawbridge Defense
10193 Medieval Market Village
7037 Tower Raid
7029 Skeleton Ship Attack
7048 Troll Warship
7097 Trolls' Mountain Fortress
A lot of smaller sets like 5614 The Good Wizard that do not take space.

Kingdoms:

6918 Blacksmith Attack
7187 Escape from Dragon's Prison
7188 King's Carriage Ambush
7189 Mill Village Raid
7946 King's Castle

I want to build a nice terrain where to place all those sets together. for example, a mountain where to place the Mine, and a hill to put the Blue Castle on top. The a river for the Drawbridge, a plain for the medieval village and the the mill, a coast for the harbor, a sea for the two ships, and another coast for the Troll fortress. I have yet to decide where to put the Red castle.
The whole MOC would require 10-14 big baseplates (my estimate). So planning the whole thing is very hard and I got lost with LDD very soon. To make things easier, it would help a lot if the software has the "size box" for the sets, so I have a way to understand how to place each set on the scene without having to build them from scratch, so I can concentrate on the terrain.
I have no clue on how to go forward on this, to design all the terrain and then get the component list (and it's cost) to build everything.

Hi Terix, this question is probably not a great fit here on LEGO Answers as it's really only answerable with Opinions. As TheBrickBlogger points out if you post about the specific issues you're having we can give you some better answers.

I've added more details to narrow down my issue, hope it makes a better question.

Design stage

decide roughly where everything should go
use various boxes to place them at the right position and height
build the bits in the middle once you are happy with the layout
if you don't mind cheating and are good with a ruler, you could build a multi-level base-plate out of wood and just build the very top level of ground.

Buying pieces
(Duplo is relatively cheap and builds big to lay down hills/mountains, use Lego bricks on top to provide a building surface.)
Find a lego store that you can get to easily and often.
The Pick-a-Brick wall will often have useful grass / slope / tile / transparent pieces that can make large and cheap filling areas (pour lots of clear blue 1x1 round plates into a tray for water).
If there is a really useful piece on the PaB wall you can ask for a box full of pieces, (which I believe is known as a K2), this is probably the cheapest way to buy 1000s of bricks at a time, (if they have a box available).
inventories for local Pick a brick walls: http://wallofbricks.com/

There is any way to know all the sizes of built sets either in cm or knobs? I have all the sets stored away because lack of space and would be easier to avoid opening everything to check sizes.

Official Lego website has all instructions for download as PDF, Brickset.com has a database of most sets that can be used to find pictures and instructions from other sites.

Some of the more popular programs used when designing MOCs are:

LEGO Digital Designer
MLCAD
SR 3D Builder

There are some other ones available but those three seem to be most preferred editors. They all have quite similar set of features but their user interfaces are very different. I encourage you to try each of them out. If you wish to find most extensible software, MLCAD seems to be rather old and stable platform to build upon.
I myself use pen & paper for concepts and ideas and LEGO Digital Designer for designing.

I'm not sure why are you saying that using LDD to design your MOC was an "insane idea" that turned into an "obvious nightmare". LDD is meant exactly for that; designing MOCs. You don't mention what issue you ran into, but you should be able to build any kind of castle in LDD just fine. If you specify what problems you encountered others could probably help you with solving them. Although LDD was originally intended for children to be able to design their own MOCs and order them directly from LEGO (a feature that has been discontinued), it is very powerful and you can design pretty much anything.
I myself use a combination of planning on paper, real LEGO bricks, and LDD to design MOCs. Paper to get the initial concept, real bricks to work out scale and some details, and LDD to finish the MOC and get the bill of materials so I can order the pieces I don't have from BrickLink.

I added more details of what I'm trying to accomplish, maybe my question now is more clear :)

I looked at your updates to the question. Yes, that is going to be a challenge because unless you virtually build all those sets it is going to be hard to work around them in LDD. May I ask why you want to create this project virtually? Usually for very large projects like this people just build them in real life. Landscaping is not that difficult to tie buildings together; some grass, some trees, a river, a couple of roads... you don't really need LDD for any of that.

As far as your question in regards to each of those sets, you should be able to figure out the size by looking at the picture of each set and counting the studs of the foundation.

Here is a link to an article I wrote some time back about building a Medieval Village, including landscaping. You might find it helpful: http://thebrickblogger.com/2012/08/guide-to-building-a-lego-castl-village/

I need to know the size of the MOC because before building it, I need to build the furniture that will hold it in place :) Now I don't have the space to keep it, maybe I will build it when I'm almost ready to go with the project, but now I need to still figure it out. I downloaded all the manual pdf and counted all the studs. I need glasses now, but this step is done :)

Since your project is going to be very large, I would suggest that you work with contstruction paper. You can draw out the outlines of the castles and other various buildings, and you can also plan out the baseplates. This should help you build the furniture that will hold it all.

Also, I might suggest that you may want to make that furniture modular. In otherwords, instead of making one large table, make i.e. 4 smaller ones that can be configured in different ways. This way you can always expand our layout, or make it smaller, or configure it differenently, depending on your needs.

I know this is an older question but, for anyone else who might be looking for a good way to plan/design/refine a MOC idea, I wanted to throw in my 2¢. For the past week or so I've been working on refining my own MOC idea using Mecabricks. It's taken me a little while to get familiarized with the toolset available and there are probably some features I haven't even looked into yet, but it's a pretty great, online LEGO CAD (computer-aided design) tool for putting together MOC's. If you just want to "jump in" and start building, their Workshop is accessible without any signup, although to save your designs you'll need to register (free) an account.
I've not tried their import functionality, so I can't speak to that at this time. I'm not sure how it works or if it would be a way to bring in the information for existing sets. I couldn't say if there are any bricks "missing" from their available list but you can use pretty much any color, including transparent, metallic, etc. It does not (currently) offer the feature for producing instructions, although that appears to be in the works. It does, however, offer a way to export the parts list when you're done to a CSV file or an XML file that can be used on BrickLink to add the parts used in your MOC to a wanted list.
Just for reference, I hadn't used this site until this week, and I've already been able to use it to create several variations of a pretty simple MOC idea I had (my designs use bricks that apparently aren't available in the colors I've chosen, but this has at least given me an idea of the direction I want to take it).


text:
What does BURP or BURPS stand for?
Came across this one a few times (most recently here) where it links to a number of mountain elements:

you still end up with some neat mini-BURPS and other useful pieces

I've heard variations on "Big Ugly Rock PieceS".
However, I've also seen the term used to describe any large piece that the builder thinks has little reusable value due to its shape being pretty specific to a certain use.  Obviously the mountain pieces are built to look like pieces of rock.  But there's also some tower elements in the Harry Potter sets that often fit description.

Many other acronyms used by LEGO nuts: http://www.brothers-brick.com/lego-glossary/


text:
Code for PID for EV3-g
I want to use PID for my Ev3. I used PID for NXT-G before, but I have never used EV3-G before and don't know how to get PID. Could someone please post a screen shot of the code or upload the file?

Not clear whether "I used PID for NXT-G" means you wrote a PID in NXT-G for use on an NXT, or you bought a 3rd party PID control for use with an NXT.  Let's assume you want to write the program.  A starting point is: http://e-fisica.fc.up.pt/edicoes/8a-edicao/projectos/robo-sensorizado-com-lego-mindstorms/documentacao/PID%20Controller%20For%20Lego%20Mindstorms%20Robots.pdf (from a google search for "PID NXT").

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.

i understand that code. But how to make robot go straight for 5 rotations for example. without waiting between rotations ? thanks

Good point, this example runs forever. One way to implement stopping after 5 rotations, would be to replace the infinite loop with a loop that runs until the left motor + right motor   > 10 rotations. Obviously, that would be less than ideal.

The best documentation I have found for PID is "A PID Controller For Lego Mindstorms Robots" by J. Sluka
J. Sluka
Send me an email at:
Lego at InPharmix dot com
It is written for the NXT and needs to be updated for the EV3.  But it has really helped me out.  I am working on a maze solver and used PID to follow the wall.  I prefer to program the EV3 in python and have included the code here.
#!/usr/bin/env python3
# so this script/program can be run from Brickman

from ev3dev.ev3 import *
from time import sleep

import ev3dev.ev3 as ev3

print('Auto Driver TubeBotEZ.py')
# File EV3 Python TubeBot.py
ev3.Sound.speak('python Tube Robot easy 2').wait()

LeftWheel = LargeMotor('outA')
RightWheel = LargeMotor('outB')
ir = InfraredSensor()
# assert ir.connected, "Connect a single infrared sensor to any sensor port"

ts = TouchSensor()
# assert ts.connected, "Connect a touch sensor to any port"
# can have 2 statements on same line if use semi colon

# Put the infrared sensor into proximity mode.
ir.mode = 'IR-PROX'

DelayTime = 0
Target = 10
Error = 0
Integral = 0
Derivative = 0
LastError = 0
Kp = 3
Ki = 0
Kd = 0
PID = 1
Time = 400
LeftPower = 1
RightPower = 1
MaxTurnPower = 200
Iteration = 0
Distance = 0
SpeedFactor = 300
y = 0
Speed = 100
OldDistance = 1000
DistanceL = 1
DistanceR = 2

Beginning = '{:3d}        Start                        Left Distance {:>4.0f}     Right Distance {:>4.0f}'.format(Iteration, DistanceL, DistanceR)
Ending = '        LeftPower {:>5.0f}    RightPower {:>5.0f}'.format(
    LeftPower, RightPower)
print(Beginning, Ending)

#ev3.Sound.speak('Start').wait()
sleep(DelayTime)
Battery = True
#Sound.speak('Point 1')
while Battery:
    Leds.all_off()
#    Leds.set_color(Leds.UP, Leds.GREEN)
#    Leds.set_color(Leds.DOWN, Leds.GREEN)
    Leds.set_color(Leds.LEFT, Leds.GREEN)
    Leds.set_color(Leds.RIGHT, Leds.GREEN)
    # Phase 1
    if True:

#        Sound.speak('SQUARE WALL')
        sleep(DelayTime)
        DistanceL = ir.value()
        LeftWheel.run_to_rel_pos(position_sp=20, speed_sp=900, stop_action="hold")
        RightWheel.run_to_rel_pos(position_sp=-20, speed_sp=900, stop_action="hold")
        #sleep(DelayTime)   # Give the motor time to move
        #LeftWheel.stop()
        LeftWheel.wait_while('running')
        RightWheel.wait_while('running')
        #sleep(1)
        DistanceR = ir.value()
        if DistanceL != DistanceR:
            if DistanceL < DistanceR:
                while DistanceL < DistanceR:
#                    print('in Left loop')

#                    Sound.speak('Left').wait()
                    sleep(DelayTime)   # Give the motor time to move
                    DistanceR = ir.value()
                    LeftWheel.run_to_rel_pos(position_sp=-20, speed_sp=900, stop_action="hold")
                    RightWheel.run_to_rel_pos(position_sp=20, speed_sp=900, stop_action="hold")
                    sleep(DelayTime)   # Give the motor time to move
                    LeftWheel.stop()
                    LeftWheel.wait_while('running')
                    sleep(DelayTime)
                    DistanceL = ir.value()
                    Iteration += 1
                    Beginning = '{:3d}      Left      in                    Left Distance {:>4.0f}     Right Distance {:>4.0f}'.format(Iteration, DistanceL, DistanceR)
                    Ending = '        LeftPower {:>5.0f}    RightPower {:>5.0f}'.format(
                        LeftPower, RightPower)
                    print(Beginning, Ending)
#                ev3.Sound.speak('Re set Right').wait()
                LeftWheel.run_to_rel_pos(position_sp=20, speed_sp=900, stop_action="hold")
                RightWheel.run_to_rel_pos(position_sp=-20, speed_sp=900, stop_action="hold")
                sleep(DelayTime)   # Give the motor time to move
                LeftWheel.stop()
                LeftWheel.wait_while('running')
                sleep(DelayTime)
                Iteration += 1
                Beginning = '{:3d}       Left out                     Left Distance {:>4.0f}     Right Distance {:>4.0f}'.format(Iteration, DistanceL, DistanceR)
                Ending = '        LeftPower {:>5.0f}    RightPower {:>5.0f}'.format(
                    LeftPower, RightPower)
                print(Beginning, Ending)
                Sound.beep()
            else:
                while DistanceR < DistanceL:
#                    print('in while close loop')

#                    ev3.Sound.speak('Right').wait()
                    sleep(DelayTime)
                    DistanceL = ir.value()
                    LeftWheel.run_to_rel_pos(position_sp=20, speed_sp=900, stop_action="hold")
                    RightWheel.run_to_rel_pos(position_sp=-20, speed_sp=900, stop_action="hold")
                    sleep(DelayTime)  # Give the motor time to move
                    LeftWheel.stop()
                    LeftWheel.wait_while('running')
                    sleep(DelayTime)
                    DistanceR = ir.value()
                    Iteration += 1
                    Beginning = '{:3d}          Right   in                   Left Distance {:>4.0f}     Right Distance {:>4.0f}'.format(Iteration, DistanceL, DistanceR)
                    Ending = '        LeftPower {:>5.0f}    RightPower {:>5.0f}'.format(
                        LeftPower, RightPower)
                    print(Beginning, Ending)

#                ev3.Sound.speak('Reset Left').wait()
                LeftWheel.run_to_rel_pos(position_sp=-30, speed_sp=900, stop_action="hold")
                RightWheel.run_to_rel_pos(position_sp=30, speed_sp=900, stop_action="hold")
                sleep(DelayTime)  # Give the motor time to move
                LeftWheel.stop()
                LeftWheel.wait_while('running')
                sleep(DelayTime)
                Iteration += 1
                Beginning = '{:3d}          Right   in       out            Left Distance {:>4.0f}     Right Distance {:>4.0f}'.format(Iteration, DistanceL, DistanceR)
                Ending = '        LeftPower {:>5.0f}    RightPower {:>5.0f}'.format(
                    LeftPower, RightPower)
                print(Beginning, Ending)

                Sound.beep()

        Beginning = '{:3d}       Finished                     Left Distance {:>4.0f}     Right Distance {:>4.0f}'.format(Iteration, DistanceL, DistanceR)
        Ending = '        LeftPower {:>5.0f}    RightPower {:>5.0f}'.format(
            LeftPower, RightPower)
        print(Beginning, Ending)
        Sound.beep()

        Beginning = '{:3d}    Target {:3.0f}    Distance {:>4.0f}'.format(Iteration, Target, Distance)
        Ending = '    Delta {:>4.0f}    Integral {:>5.0f}    Derivative {:>5.0f}    LastError {:>5.0f}    PID {:>5.0f}    SpeedFactor {:>5.0f}    LeftPower {:>5.0f}    RightPower {:>5.0f}'.format(
            Error, Integral, Derivative, LastError, PID, SpeedFactor, LeftPower, RightPower)
        print(Beginning, Ending)
        sleep(DelayTime)

        while not ts.value():  # Stop program by pressing touch sensor button
                # Infrared sensor in proximity mode will measure distance to the closest
                # object in front of it.

#                    Sound.speak('FORWARD')
                    sleep(DelayTime)
                    Iteration += 1
                    Distance = ir.value()
                    if Distance < Target:
#                        print('in Distance < Target loop')
                        Leds.set_color(Leds.LEFT, Leds.RED)
                        Leds.set_color(Leds.RIGHT, Leds.GREEN)

#                        Sound.speak('RIGHT')
                        sleep(DelayTime)
                    else:
#                        print('Close else')
                        Leds.set_color(Leds.LEFT, Leds.GREEN)
                        Leds.set_color(Leds.RIGHT, Leds.RED)

#                        Sound.speak('LEFT')
                        sleep(DelayTime)

                    Error = Target - Distance
                    Integral += Error
                    Derivative = Error - LastError

                    if Integral < -MaxTurnPower:
                        Integral = -MaxTurnPower
                    if Integral > MaxTurnPower:
                        Integral = MaxTurnPower

                    if Derivative < -MaxTurnPower:
                        Derivative = -MaxTurnPower
                    if Derivative > MaxTurnPower:
                        Derivatine = MaxTurnPower

                    PID = Kp * Error + Ki * Integral + Kd * Derivative

                    if PID < -MaxTurnPower:
                        PID = -MaxTurnPower
                    if PID > MaxTurnPower:
                        PID = MaxTurnPower

                    LeftPower = SpeedFactor + PID
                    RightPower = SpeedFactor - PID

                    if LeftPower < -900:
                        LeftPower = -901
                    if LeftPower > 900:
                        LeftPower = 902

                    if RightPower < -900:
                        RightPower = -903
                    if RightPower > 900:
                        RightPower = 904

                    Beginning = '{:3d}    Target {:3.0f}    Distance {:>4.0f}'.format(Iteration, Target, Distance)
                    Ending = '    Delta {:>4.0f}    Integral {:>5.0f}    Derivative {:>5.0f}    LastError {:>5.0f}    PID {:>5.0f}    SpeedFactor {:>5.0f}    LeftPower {:>5.0f}    RightPower {:>5.0f}'.format(
                        Error, Integral, Derivative, LastError, PID, SpeedFactor, LeftPower, RightPower)

                    print(Beginning, Ending)
                    LeftWheel.run_timed(time_sp=Time, speed_sp=LeftPower)
                    RightWheel.run_timed(time_sp=Time, speed_sp=RightPower)

                    LastError = Error

#    Leds.set_color(Leds.UP, Leds.RED)
#    Leds.set_color(Leds.DOWN, Leds.RED)
    Leds.set_color(Leds.LEFT, Leds.RED)
    Leds.set_color(Leds.RIGHT, Leds.RED)
    LeftWheel.run_to_rel_pos(position_sp=-20, speed_sp=900, stop_action="hold")
    RightWheel.run_to_rel_pos(position_sp=-400, speed_sp=900, stop_action="hold")
    Sound.beep()

That is a great picture of a great EV3-G program written in a great programming  language editor.  I do not understand how your EV3-G editor in 2014 is better than my editor in 2017.  Is it possible that you are using the Macintosh software.

That is a great picture of a great EV3-G program written in a great programming  language editor.  I do not understand how your EV3-G editor in 2014 is better than my editor in 2017.  Is it possible that you are using the Macintosh software.      Specifically, when you break your code into rows, your wires are equally spaced between the rows.  My editor temporarily does that, but when the last end is anchored, the equal spacing is lost.  My EV3-G editor is up to date for 2017.  What am I missing?

"your EV3-G editor in 2014 is better than my editor in 2017" - it was written on a PC using the "education" version of EV3-G.  That version has comment blocks, which allow adding comments that travel with the linked blocks. It's available from the "Advanced" tab.  Either version is a free download. The image PID is known to work on the NXT brick, but not EV3. EV3 handles the loops too fast and needs to add a delay before re-entering the loop.


text:
CAD model of the LEGO monorails
I was wondering two things, Is it legal to share CAD models of LEGOs with other people as long as it is not for profit and Does anyone have A CAD model of the LEGO monorail track that was made in the late eighty's and early ninety's?

First question;  yes. as long as they are your CAD models you can do that , for example on Brickshelf
Second question: In  LDraw , A CAD program for Lego they have monorail parts, here
this may also be usefull
Monorail Network Planner Tool


text:
Where will the World First Lego League be held in 2015?
Every year First Lego League (FLL) is held in 3 different countries. I know that the world festival will be held in St. Louis, but where will the other two be?
Last year it was held in Germany and Canada.

Sorry there is no tag for FLL so I chose the lego group because its the closest to my question, if someone can create a tag for FLL that will be great.

I fear that this is likely to be considered "too localised" as it's only going to be a valid question for the next few months :(

Will be repeated every year right?

Yes, but this question is specifically asking about 2015 - you've already pointed out that it was in different locations last year.

Hmm, just remembered that we removed Too Localised last year. This may well be closed as Off Topic at some future point when it's no longer relevant though.

The FLL World Festival is going to be held in St. Louis, MO, USA, on April 22-25, 2015 (http://www.firstlegoleague.org/event/worldfestival).  This is the only official championship event held by the FLL.
Before the World Festival, various qualifying events are held all over the world.  You can learn more about those events by searching on this page: http://www3.usfirst.org/whats-going-on
Unofficially, FLL partners hold Open Championships around the world.  These events generally take place in the United States (in addition to the official World Festival), Canada, Asia, and Europe.  For more information, visit this Wikipedia page:  http://en.wikipedia.org/wiki/FIRST_Lego_League_Open_Championships


text:
Any substitute / schematic for Mindstorms 2.0 IR tower?
I came across a used Robotics Invention System 2.0 set, but in addition to a few missing bricks, it is missing the IR tower. Is there any generic replacement that I can use to program the RCX or does anyone know where I can find a schematic to build my own? Thanks...

There is no non-LEGO product that can substitute the infrared tower used for communicating with the RCX, as the USB and Serial towers use a very specific protocol that does not match that of other Infrared devices. Nonetheless, it does appear that there are schematics available for the IR Tower, courtesy of Mark Bellis:

I'm no expert on low-level electronics, but it looks like this site has a lot of additional information that could be useful if you want to replicate/manipulate the IR tower.


text:
Is there an XML format for Lego?
I've seen some pretty neat applications using customized XML formats. There is a Musical Notation XML so that a user can create sheet music on XML. With the right software, that XML can be converted to ACTUAL sheet music, and other plugins even convert this XML to a MIDI output that plays the music.
I'm wondering if there is an XML format for Lego? I would assume it would follow a procedural output where Step 1 is take a 2x2 piece and attach peg Top-Left to 4x1 piece bottom slot. Or something similar.
Just wondering... if there isn't, I feel like there should be. With a Javascript app written for it you could have people converting Lego instruction books to XML or creating custom instruction books with walk-thrus available with a Javascript app.

Yes, there is LXFML - which is if you like an "offical" XML format for LEGO models - in that it's produced and maintained by The LEGO Group.
The .LXF format used by LEGO Digital Designer is a compressed archive containing a thumbnail in .png format and a model definition file in LFXML.
As I noted in the answer to that question, the LDD team have shared both the documentation and XSD for validating this.
Within the definition, there is scope for a <BuildingInstructions> element that can contain one or more <BuildingInstruction> elements. These in turn contain <steps> which reference one or more parts or contain sub-steps:
<BuildingInstructions>
  <BuildingInstruction name="b6206_" cameraRefID="4">
    <Step name="b6206_s1">
      <Step name="b6206_s2">
        <PartRef partRefID="0"/>
      </Step>
      <PartRef partRefID="1"/>
      <PartRef partRefID="2"/>
    </Step>
    <Step>
      <PartRef partRefID="3"/>
    </Step>
  </BuildingInstruction>
</BuildingInstructions>

Note that the <PartRefs> are Ids to parts in the <Model> elements, which define the actual element, colour and orientation.
The default steps created within LDD have been known to be a little hit and miss, adding multiple elements at once and not always visibly or in a valid order (although that may have improved since I last used it for step creation).

Ah, very good! I didn't realize there was documentation on LDD files, and that it came closer than .ldr files to what randomblink was asking for. I'll go ahead and edit my answer to acknowledge this.

As Zhaph - Ben Duguid said, there is the .LXFML format which is basically an XML document detailing a LEGO model. Another format you might find of use if the .ldr format. .ldr files are used in various LEGO virtual building programs that make up what's called the LDraw system of tools. As an example of the .ldr format, this:

Can be generated by pasting this into a text document and renaming it .ldr:

0 Brick test
0 Name: Brick test.ldr
0 Author: HaydenStudios
0 Unofficial Model
0 ROTATION CENTER 0 0 0 1 "Custom"
0 ROTATION CONFIG 0 0
1 4 50 0 0 1 0 0 0 1 0 0 0 1 3001.dat
1 7 50 -8 0 1 0 0 0 1 0 0 0 1 3020.dat
1 4 50 -32 0 1 0 0 0 1 0 0 0 1 3003.dat
1 4 50 -56 10 1 0 0 0 1 0 0 0 1 3009.dat
0

All LDraw applications rely on having a base LDraw installation to refer to which contains files for 3D models of all LEGO parts available in the LDraw parts library. If you wanted to write a Javascript that interprets LDraw models, you'd need it to have an LDraw parts library stored somewhere to refer to, such as on a server.
Each tool in the LDraw system of tools has its own "actions" that it injects into an LDraw file when you edit it. One such program, LPub, is specifically designed for making instructions for models constructed using any LDraw-compatible tool:

It allows you to set up each page, and saves your setups for each page into the LDraw file so that it can be read by any program that knows how to read LDraw files and LPub's formatting.
This and the .LXFML format are the only two file formats I know of that are along the lines of what you described. One potentially deciding factor in which format to choose is the different ways they handle instructions. For LDraw files, you have to manually make the steps as you make the models, whereas LDD automatically generates the instructions. While this can save the builder a lot of time, the order in which the pieces are added may not make as much sense as if they were made manually. Whether this is a pro or con is really a matter of personal preference.
Altogether, though, I'd personally recommend using LDraw files due to LEGO Digital Designer's relatively limited part library, as well as the fact that the former is generally more favored among the late teen and AFOL community.


text:
Unknown brick/piece information (curved, decorated slope)
Recently, I got a huge box of LEGO sets all mixed together.
I have been slowly identifying the sets that are there.
Some are complete, while others not, but I have been managing so far.
Still, there is one piece that I failed to discover what it is.
I remember seeing it a while back but can't say from where.
Can someone help me out and tell me what brick this is?

Thanks.

It would be a Slope, Curved 2 x 2 Lip, No Studs with Island Xtreme Stunts Logo and Flames Pattern.


text:
Where can I find LDraw examples?
Where can I find LDraw files to download?
I would like to have a collection of simple Lego examples and want to create step-by-step instructions for my youngsters.

Last time I checked, the LDraw All-In-One installer comes with a bunch of sample official models.

The models included in AIOI as mentionned by HaydenStudios is also available as separate download
There is also a huge collection of LDraw models of official sets available on Eurobricks forum


text:
Is there a program to tell me if a specific parts list is available in a given colour?
I want to build some models using the new 1x2 curved slopes which come in limited colours at the moment, the models need to have single solid colours if at all possible.
Is there a program or site that will let me put in the parts needed and preferred colour, and then tell me if they are all available in that colour?
I know about Bricklink and Brickset (but not a registered user of either), so I can do it part by part if I need to.  I could also use LDD Manager to get a list of buyable bricks from a LDD file containing all bricks in all colours, although I would still need to check another site to find out what sets they are in.
Is there an easier way?

So, specifically, you're looking for a way to automatically look up part+colour existence for a list of parts?

Yes, and also the sets that I would have to buy if possible.

If you're up for a bit of programming, Rebrickable.com has an API that can query part+colour and return matching sets.

Get Part Sets
Use this service to get a list of all sets that a specific part/color combination appears in. This is best used after calling the get_part function to retrieve the list of available colors.
URL    /api/get_part_sets
Method    GET
Parameters    key - API Key
part_id - The Part ID to look up (e.g. 3001)
color_id - The LDRAW based Color ID to look up (e.g. 0 = black)
format - How to display output data. Valid values: xml, json
Returns   INVALIDKEY - The API Key is invalid
NOPART - The part/color could not be found or has no sets
 Output data.

This looks interesting, I would have to learn how to program with a website API, but I'm sure I con do that if I find some tutorial sites.

@Windfire Here is something to get you started. You'll need an API key from rebrickable. http://jsfiddle.net/a1j39rtx/

That could help...


text:
How can i use my iPhone to scan a barcode and send it to my EV3 brick?
I'm trying to build a sorter that scans the barcode on the brick using an iPhone and sorts it accordingly to the barcode. I cannot use colours due to amount of things to sort.

There are many Apps available on the App store that can scan barcodes and export the data via e-mail/dropbox etc. However your main problem will be latency. Unless you're prepared to program your own app (as David suggests) it may be worth considering other options.

You will have to write an application for your phone that can scan the codes and then send the information to the EV3 via bluetooth or wifi.
If you don't know how to write iOS apps, start here.
For scanning bar codes there seems to be good info here. It appears that bar code scanning is built into iOS 7. If you have an older version, the the zxing library sounds like a good choice.
For communicating to the EV3 over bluetooth, this has been asked before. However, I have yet to come across a good example.
You should be able to figure out the communication protocol for communicating with the EV3 from the LEGO firmware documentation, VM documentation and source code.


text:
21104 NASA Mars Curiosity Rover?
Has Lego made a public statement why they stopped producing the Curiosity Rover set? Each of its few production runs sold out in hours. Why won't they take my money?
More importantly, how do I get a set for my kids (and me)? Speculators sell them in the vicinity of $100, but I'd rather not reward their hoarding if there's another option. None of the stores on Rebrickable have the full parts list. Does Pick A Brick keep everything in stock?

Gev already answered the question about availability. LEGO Ideas sets are produced in small quantities. Perhaps this will change in the future as LEGO Ideas is now out of beta testing and was brought in-house by LEGO. The Curiosity is not going to be back unfortunately. I just called LEGO about this a couple of days ago.
As far as the Curiosity inventory, BrickLink has the full parts-list here: http://www.bricklink.com/catalogItemInv.asp?S=21104-1. None of the parts are rare or difficult to find. You can use the parts-list linked above, add them to your wanted list on BrickLink, then quiry your wanted list by shop. This will show you which stores have all the parts you need in stock. And you can download the building instructions from LEGO's customer service website here: http://service.lego.com/en-us/buildinginstructions/

I don't recall an official statement, but one story I read said that they made a deal with the original designer to limit production to one run, but that seems almost apocryphal.
As for buying the pieces you need, I would think you'd have better luck on Bricklink.
It's possible that the PaB on S@H might have all the pieces necessary, but that seems truly laborious and pricier than Bricklink.
Note: this is all off the top of my head with zero research behind it, so grain of salt and all that.

There was no deal with the original designer to limit production to one run...he was very disappointed when it was...Perijove's Mom

Thank you! I agree it's a drag that these things get artificially limited like that.


text:
What's the best way to glue/adhese the street baseplates to a plywood table?
I'm building a Lego city, and I want to permanently glue the road onto the table.  But I don't want it to be "lumpy", or melt, and I want to make sure that the baseplates will not come off the table, whether it be water or indirect heat (such as sunlight).  A friend suggested furniture glue, but I'm not sure that'll be strong enough or flat enough.
Any ideas welcome.

You could always put a screw through a 2x2 plate and use it to fix the corners, the rounded corners on the road plates won't be damaged, and you only lose a very small, cheap part.

Nice, but I'm going to guess that the middle of a baseplate is still going to flex a lot unless you take care as to how you remove elements from it.

If you use technic plates with the holes, you might not even damage any pieces at all.

My only immediate concern would be the edge of the table then.

I mounted baseplates to a sheet of plywood in order to hang a mosaic as follows:

Roughly sand the plywood and the backs of the baseplates.
Squirt a generous helping of Liquid Nails on one of the surfaces.
Lay out your baseplates on the plywood using regular plates as spacers (i.e., attach plates across the boundaries between two baseplates in order to maintain correct spacing.
Randomly distribute plate elements across the surfaces of the baseplates.
Clamp a second piece of plywood across the top of the plate elements.
Let dry/cure for 24 hours.
Remove all of the plate elements.

The reason for step (4) is to create a level surface on which the top sheet of plywood can press when clamped.

This is a good idea, except the table will be 4' by 8'.  Harder to clamp and distribute weight, but not impossible.

LEGO plates are made from ABS plastic, as are plastic shower surround materials. Buy a caulk tube of shower surround adhesive (I have used loctite power grab from Home Depot $5). Scuff the back of the LEGO plates with some sandpaper and apply the adhesive with a fine notched trowel and slap it on your wood ;) Gently press any lumps out. To date I've made 4 LEGO tables like this and it works wonderfully.

Have you considered using velcro-strips? You can cut it to whatever size you want and it won't permanently damage your basepalces like glue wood. And there is also various versions of two-sided tape. Some of them are very strong and can even hold picture-frames on walls. So they should definitely hold baseplates down.

The problem I foresee with velcro would be the uneven "lumps" where the velcro straps would be.

I have used velcro on baseplates and it wasn't lumpy or uneven. Velcro comes in different shapes, sizes and thickness. There are some that are very thin but still have enough grip. If you add enough it is fine. I used the small dot kind that is very thin on 32x32 baseplates; at the corners, few on the sides sides and few in the middle. If you do full strips of the thicker Velcro on all sides and a larger piece in the middle it should even be more stable and should still be fine (not lumpy). If you're interested I would suggest to check with your local craft/hobby store and see their selection.

I have had success with super glue (LocTite). I recommend it because:

You don't need much glue to get it solidly attached. This means, if you are careful, no mess or cleanup, and no worry of bulging or unevenness of the plate.
It adheres extremely fast, so there is no need for clamping. You can just press it together by hand for a half a minute.
If you don't get some edge or corner adhered properly, super glue comes with a long nozzle that will allow you to patch it up.
The bind should be strong without needing to rough up the surfaces. It makes the job quick & easy.
Common: almost any sort of store, even a dollar store, is likely to have it.

Important: Do not ignore what the other answers say about using a block attached to two plates to get the spacing between them right. If you butt the plates directly against one another, they will be too close to attach a piece to both; and if you put very much of a gap between the plates, they will be too far apart.

I used double sided vinyl flooring adhesive.

I used spray-on contact cement (the kind where you spray both surfaces, wait for them to get tacky, and then press together).
It worked okay but the baseplates slid out of alignment over time and started coming off around the edges.
If I did it over again, I would use nuts and bolts after first aligning all the baseplates with each other using small plates, like Windfire though not necessarily through the plates. The important thing is they be well tightened and evenly spaced. And if I needed to fix or replace a baseplate for some reason then that would have been easier with bolted-on plates as well.

Good to know what doesn't work as well - thanks :)


text:
Lego 7670 has two different box designs?
Does Lego 7670 (Hailfire Droid and Spider Droid) have two different colored boxes? I am seeing two different boxes on Ebay and other sites. One is a white clone wars box, and the other is a dark red and black Darth Vader box. Why are there two boxes? Also I saw that on Ebay, that the white ones were cheaper and used, but the black ones are usually New and if they are used, they Don't have boxes. Is one more valuable than the other?

Indeed it seems there are two different boxes for 7670 Hailfire Droid & Spider Droid, but it seems the box is the only difference, so if you just want the pieces ignore which box they're selling and buy the cheapest. :)


text:
Where can I download the software for old RCX-era Mindstorms sets?
These days I've been coming across a lot of people who've purchased used MINDSTORMS sets from the RCX era, only to find they didn't come with a CD. And in order to use the set, assuming that using an alternate programming language is not an option, the buyer can either Buy a CD off Bricklink, or find a place to download the software.
While CDs aren't overly expensive, they're going to become harder to come by as time goes on, and being able to download the software is preferable since it's almost instant and doesn't cost money. LEGO technical support representatives have stated over and over again that they don't care about people copying and downloading their old software, so downloading their old software is perfectly legal.
Does anyone know a reliable place to download the software for the Robotics Invention System 1.0, 1.5, and 2.0? CD images are preferable, but working stand-alone installers are valid as well. Extra points to anyone who can also provide a place to download the software for the Vision Command, Ultimate Builders Set, Exploration Mars, Extreme Creatures, and Robo-Sports expansion packs. And super extra special points if someone knows where to get an iso for the Windows XP-specific Vision Command software and the Robotics Invention System promotional CD.

While you specifically ask for the RIS software, this was not the only software LEGO distributed with the RCX brick. There were also LEGO Education sets marketed to schools that included a graphical programming tool called ROBOLAB, which was an add-on to a program called LabVIEW. LabVIEW is an expensive program, but is available to educators at a discount. The ROBOLAB Add-on is free.

It is true that that is software packaged with some RCX sets, but I didn't list it here since it was educational software rather than retail software. And like you said, it was an add-on to expensive 3rd party software. Nonetheless, if someone includes a link to download that in their answer, I won't count any points off.

Something to consider is that LEGO released the RIS software in different languages.

Quite right. I was thinking about that when I first wrote the question. I guess just it's preferable that the submitted download links are for English versions.

The real challenge will be installing and running it on modern equipment.

The simple solution to that is to install it on a virtual machine.

Nope, there's a simpler solution. On Windows 10 just use the compatibility mode with the software.

I've found a seemingly broken website, but from the sources I was able to salvage these addresses, they work just fine (as far as the download goes, I did not check the contents):

http://www.brickfactory.info/iso/files/9731_lego_vision_command_xp.zip -> German version
http://www.brickfactory.info/iso/files/9722_extreme_creatures_1.0.zip

Vision Command English:

https://www.mediafire.com/?xo6xfjvnbzaaf7u

Multi Software Download -> English:

https://www.mediafire.com/folder/ohsruj4zmjy9g

There are many other downloadables from this site:

http://biomediaproject.com/bmp/files/LEGO/cds/temp/1349_Lego_Studio_Dutch_XP.zip
http://www.brickfactory.info/iso/files/1382_lego_studio_sound_fx.zip
http://biomediaproject.com/bmp/files/LEGO/cds/temp/3804_dutch.zip -> RIS 2.0
http://biomediaproject.com/bmp/files/LEGO/cds/temp/3804_french.zip -> RIS 2.0
http://www.brickfactory.info/iso/files/3806-3809_Spybotics_english.zip
http://www.brickfactory.info/iso/files/8299_lego_submarine.zip
http://biomediaproject.com/bmp/files/LEGO/cds/temp/8428_Turbo_Command_CD1.zip
http://biomediaproject.com/bmp/files/LEGO/cds/temp/8428_Turbo_Command_CD2.zip
http://biomediaproject.com/bmp/files/LEGO/cds/temp/8450.zip -> cybermaster_mission
http://biomediaproject.com/bmp/files/LEGO/cds/temp/lego_cybermaster_dutch.zip
http://www.brickfactory.info/iso/files/8547_mindstorms_nxt_2.0.zip
http://www.brickfactory.info/iso/files/9731_lego_vision_command_xp_french.zip

As for the RIS ISO I've found this torrent but it looks like there is no recent activity, maybe one could ask the once-downloaders to seed for a while?
https://www.demonoid.ph/files/details/2583886/004623788640/

Not bad. It doesn't completely fulfill all the criteria for any of the stages of thoroughness, but it does cover some of all three. If nobody provides a better answer in the next three days then I'll award the 50 bounty to you.

Well, I went ahead and awarded the bounty to this question. Not quite ready to select it as the accepted answer, though. I still encourage others to provide a more complete answer if possible.

Thank you. I have created the answer as a community wiki specifically in order to facilitate future expansion / correction by anyone else.

StackExchange is the Best. I was astonished seeing that even a Lego site exists!!! I found the software for my old Mindstorms Robotics Invention System 1.5. Running it on a VM with XP and my godchild and mysel are happy!

These moments are the reason why I love StackExchange :)

@Daenu: can you please specify which link you used for RIS 1.5? I'm finding all either blocked or broken links here, but my hope is high as you've posted in the recent past :).

Use the link http://www.mediafire.com/download/rw1k1g5nyjakdp7/LEGO+MINDSTORMS+RIS+v1.5.iso and enter the captcha to authorize download when blocked.

@user3617389 sry, don't remember. Had to crawl a bit until i found it

There are a lot of ISO files with the Robotics Invention System (RIS) software on them. Here's one link:
http://www.brickfactory.info/iso/
These will only work on Windows.

RIS 2.0 ISO now up on archive.org https://archive.org/details/ris20

I have RIS 2.0 in GERMAN Language, which I backed up for myself and all other old LEGO Fans and uploaded it. I run it on Virtual WinXP, which is set up with Oracle Virtualbox. For the old RCX Tower I have bought USB to Serial Adapter - RS232 Converter and connected it to WinXP.
Here is the Link for German Software :
https://www.mediafire.com/file/nbinswfcsxfujel/RIS2.ISO/file

there is also coach 5 & 6 software special for education.
from CMA / amstel Institute ( University from Amsterdam). 1999 for the RCX1.0 and the RCX 2.0
https://adoc.pub/handleiding-coach-5-installatie-projecten-activiteiten-funct.html
https://softadvice.informer.com/ext/https_cma-science.nl/Coach-6
https://docplayer.nl/25036978-Installatiehandleiding-coach-6-lite-nl.html
https://student.uva.nl/binaries/content/assets/studentensites/uva-studentensite/nl/a-z/ic/handleidingen-nl-en-en/coach-6-home-handleiding.pdf
http://lkruise.nl/natuurkunde/opdrachten/leerlingbrief.pdf
reminder: not in the lite version and not in coach 7