Remix.run Logo
▲ jacquesm 5 hours ago

The one you want is the experimental build, it is way faster to the point that 'preview mode' should be disabled. I use OpenSCAD a lot, it ties right into my workflow and plays nice with versioning and re-using modules from one project to another. Over time I've built up a nice library of parts that I can quickly customize for whatever it is that I'm building. Latest project: pick-and-place machine modification for Prusa MK3 3D printers (an interesting challenge, to put it mildly), now working on some robotics stuff.

The most important thing about OpenSCAD for programmers to remember is that it looks as if you are programming but really you are describing geometry and objects so things like variables and such do not quite work in the way you would expect from a programmers point of view.

▲robbles 2 hours ago | parent | next [-]

> things like variables and such do not quite work in the way you would expect from a programmers point of view.

I'm a novice at OpenSCAD still despite doing a bunch of small projects with it recently. Can you give an example of this happening? Most of the confusing stuff so far has been geometry breaking my brain and not some kind of scope issue.

▲jacquesm an hour ago | parent [-]

Well, you could be forgiven to think that if you wrote i=5; some code and then i=12; that 'some code' is executing with i set to 5. Instead all code is run with i=12 because there is only one value for a variable per scope.

This can lead to extremely annoying bugs because your brain is wired to read and understand this stuff sequentially rather than all at once. I've stared at some page of OpenSCAD code for a long time before realizing that it was yet another one of those footguns.

▲CamperBob2 22 minutes ago | parent [-]

So it's not the C of CAD, it's the Verilog of CAD. Got it.

▲RobotToaster 4 hours ago | parent | prev | next [-]

> The most important thing about OpenSCAD for programmers to remember is that it looks as if you are programming but really you are describing geometry and objects so things like variables and such do not quite work in the way you would expect from a programmers point of view.

To put it another way, it's a purely functional language in a very strict way that takes some getting used to.

▲Ccecil 3 hours ago | parent | prev [-]

Look into OpenPNP. Most of the PnP work is already done (vision, motion, feeders, etc). Just a matter of making the Prusa frame react to the commands.

▲jacquesm 2 hours ago | parent [-]

That's what I'm running.

▲Ccecil 2 hours ago | parent [-]

Nice. I have been following the project since the beginning (I work with the Smoothieware project which was used primarily in the beginning).

Some of the things developed in the project I used to modify my commercial PnP to use the Siemens feeders (Bilsef's controller board). [1]

So a project that came from our project is being used to mod my machine to make more boards for the original project :) Circle of opensource.

If you have any posts related to your mods that you can share I would like to read them to see more about what people are doing.

[1] https://www.robosprout.com/a-story-of-right-to-repair-hackin...

▲jacquesm 2 hours ago | parent [-]

I made the machine to help me assemble a bunch of boards for my electronics minded child, essentially a gridfinity based set of building blocks for electronics circuits. It works very well and he's totally happy with it. It also got him into building stuff with the Micro-Bit. My eyesight sucks and working with SMD parts is really tricky for me so I figure better to let one of my many Prusa's be the sacrificial lamb. Worked like a charm but it is not a build that I would recommend to others, there are just too many places where the 3D printer setup is fighting what would be good for pick-and-place. The best - and probably most reusable - bit to come out of it was a 3D printed nozzle that will pick up anything from 0402 to very large parts without a nozzle change.